Code Review最佳实践
* [单一职责原则:](http://en.wikipedia.org/wiki/Single_responsibility_principle)一个类有且只能一个职责。我通常使用这个原则去衡量,如果我们必须使用“和”来描述一个方法做的事情,这可能在抽象层上出了问题。
* [开闭原则](http://en.wikipedia.org/wiki/Open/closed_princip...
分类:
其他好文 时间:
2015-05-24 14:16:08
阅读次数:
176
开闭原则对扩展开放,对修改封闭。扩展时应该达到最小程度对原有代码修改甚至不改动,以免需要重复测试原有代码。可以通过集成或者添加新的类来实现。组合由于集成(Prefer composition over inheritance)see this我的原则(序号越靠前重要性越高)1.既定时间内完成客户要求...
分类:
其他好文 时间:
2015-05-24 01:20:13
阅读次数:
157
上接Spring提供的BeanPostProcessor的扩展点-1继续分析。 ? 四、BeanPostProcessor接口及回调方法图 ?从图中我们可以看出一共五个接口,共十个回调方法,即十个扩展点,但我们之前的文章只分析了其中八个...
分类:
编程语言 时间:
2015-05-21 17:36:54
阅读次数:
318
装饰模式的定义: 动态地将责任附加到对象向,若要扩展功能,装饰模式提供了比继承更有弹性的替代方案。 遵循的设计原则是开闭原则,也是对扩展开放,对修改关闭。下面是类图示例代码/** *定义被装饰者 * */public interface Human { public void wear...
分类:
其他好文 时间:
2015-05-19 16:21:27
阅读次数:
270
开闭原则(Open-Closed Principle,简称 OCP)说的是:软件实体(类、模块、功能等)应该可以被扩展,但不可被修改。 开闭原则说白了就是,应该在不修改现有代码的基础上,引入新功能。
分类:
其他好文 时间:
2015-05-08 12:36:35
阅读次数:
132
6大原则: 1、依赖倒转原则(Dependence Inversion Principle) 2、接口隔离原则(Interface Segregation Principle) 3、里氏代换原则(Liskov Substitution Principle) 4、开闭原则(Open Close...
分类:
其他好文 时间:
2015-05-06 09:13:54
阅读次数:
149
静态工厂模式,工厂方法模式,抽象工厂模式工厂方法改进了添加新产品时,静态工厂不满足的开-闭原则;而抽象工厂满足了当产品是一个产品族的情况。桥接模式,命令模式桥接模式将抽象部分与实现部分分离,使它们可以相互独立命令模式中命令的执行是作为该命令属性的命令执行者执行的,并不必须返回什么,只要执行完命令即可...
分类:
其他好文 时间:
2015-05-01 23:49:57
阅读次数:
153
说到策略模式,我们最先想到的就是商店的收银方式:不满100,正常收费;超过100不满300,超过的部分打八折;超过300,全价九折!
解决这个问题最最普通的方法就是大量的If…Else…,而它带来的就是无情的难以维护,每次条件变更都会修改原代码,严重违反了开闭原则。
显而易见,策略模式的解决方式就是封装了一系列平行且复杂的实现方式,在不同的场景下,我们选择一个最适合的方案。...
分类:
其他好文 时间:
2015-04-30 18:21:28
阅读次数:
143
封装(encapsulation)是将部分数据对应用程序的其余部分隐藏起来,并且限制程序代码其余部分访问该数据的能力封装是将类的实现隐藏起来,好让它容易适用与改变。封装让类以黑盒的方式提供给它的用户。封装遵循开闭原则体现在两个方面: 对扩展开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适...
分类:
其他好文 时间:
2015-04-26 12:17:29
阅读次数:
120
现在由这么一个需求,就是修改几个功能模块的springmvc的ajax请求返回值(对返回值加密),因为controller很多,而且以前抱着开闭原则,这里就选择使用拦截器的方式(是Filter不是spring的handlerFilter)。废话不多少,上代码。(原始controller里返回的都是json数据)。修改w..
分类:
编程语言 时间:
2015-04-24 16:51:50
阅读次数:
203