随笔 - 2  文章 - 2  trackbacks - 0
<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

留言簿

随笔档案(1)

文章分类(16)

最新随笔

搜索

  •  

最新评论

低耦合、高内聚

OOP设计原则主要提供了一个方向,使得我们的程序设计得更加合理,从而获得更好的可扩展性、可维护性。主要包括以下几个原则:

1、OCP(Open-Closed Principle) 开放封闭原则。
对扩展开放,对修改关闭。即在不修改原有程序源码的情况下对其进行扩展。实现开闭原则的关键就在于“抽象”。 “作为系统设计的抽象层,要预见所有可能的扩展,从而使得在任何扩展情况下,系统的抽象底层不需修改;同时,由于可以从抽象底层导出一个或多个新的具体实 现,可以改变系统的行为,因此系统设计对扩展是开放的。 ” 这个原则是OOP的基石,其他原则主要来实现本原则。

2、SRP (Simple Responsibility Pinciple)单一职责原则。
一个类一般应该设计成只有一个职责,如果设计成具备很多职责,那么任何一个职责的改变都会引起这个类的修改,相关引用该类的代码也可能受到影响。不同的职责或功能应该由不同的类来实现,这样可以很好的控制变化带来的影响粒度。

3、DIP (Dependence Inversion Principle)依赖倒转原则。
抽象不应该依赖于实现细节,实现细节应该依赖于抽象;高层不应该依赖于底层,都应该依赖于抽象。针对接口编程: 应该用接口或者抽象类声明变量、方法参数、方法返回类型等。

4、LSP (Liskov Substitution Principle)里氏代换原则。
子类型完全可以替换父类型,而不需要任何修改,并且获得期望的结果。

5、ISP (Interface Segregation Principle)接口隔离原则。
客户端不应该可以访问不需要的方法,这些不需要的方法是一种有害的耦合性。
所以应该设计多个专门接口而不是单个复杂的接口,客户端仅依赖最小的接口类型。

6、LoD (Law of Demeter)迪米特法则。
即最少知识原则。一个对象应当对其他对象有尽可能少的了解。只和最直接的类交互,对第三方可以通过转达交互,从而减少对象间的耦合性。

7、CARP (Composite/Aggregate Reuse Principle)合成/聚合复用原则。
多聚合、少继承,实现复用性。聚合的复用是一种封闭性的复用,被复用者对复用者隐藏了自身细节,而继承是一种开放性的复用,子类可以获取父类型相关的细节,破坏了封闭性。
posted on 2011-03-31 14:07 liucs 阅读(386) 评论(0)  编辑  收藏 所属分类: 架构与设计

只有注册用户登录后才能发表评论。


网站导航: