面向对象设计原则:

1、单一职责原则(SRP):系统中的每个类都应该只有一个职责。

好处:高内聚,低耦合。

 

2、开闭原则(OCP):对扩展开放,对修改封闭。

好处:增加适应性和灵活性,稳定性和延续性,可复用性和可维护性。

 

3、里氏替换原则(LSP):在任何父类出现的地方都可以使用它的子类来替换,且不影响性能。

多态就是里氏替换原则的实现。

 

4、依赖倒置原则(DIP):高层模块不应该依赖底层模块,两者都应该依赖其抽象;抽象不应该依赖细节,细节应该依赖抽象。

好处:提高程序的稳定性,可维护性,扩展性。

 

5、接口隔离原则(ISP):使用多个专门的接口比使用单一的总接口要好。

好处:不强迫新功能实现不必要的方法。

 

6、迪米特原则(LOP):一个对象应当对其他对象尽可能少的了解。一个类不直接调用另外一个类直接调用,而是通过中介类调用。

优点:降低耦合度,缺点:增加代码复杂性,降低运行效率。

 

7、组合/聚合复用原则(CARP):优先使用组合/聚合,使系统更加灵活,其次才考虑继承,达到复用的目的。

好处:组合复用所需要的依赖少,组合是在程序运行时间内动态进行,新对象可以动态引用与成分对象相同的对象。缺点:使用组合/组合会生成更多的对象需要管理。

  

posted on 2016-04-09 11:27  Builder  阅读(175)  评论(0编辑  收藏  举报