面向对象设计的七大原则分析与实践
1.1 七大设计原则概述
1. 单一职责原则(Single Responsibility Principle)
每一个类应该专注于做一件事情。
http://www.cnblogs.com/cbf4life/archive/2009/12/11/1622166.html
2. 里氏替换原则(Liskov Substitution Principle)
超类存在的地方,子类是可以替换的。
http://baike.baidu.com/link?url=SelVOCKDN1YQ1-RXToa8L25Bw4yVSJmItMYec0sOZB-R9mA5I5RF9xBDi5Hg0jorhE7O4InBH7EYGAGsLNfb3yTf2iPU4-0Qcch2KZhftOFWqDJRopZhO9n2m0pI27mo43lfYY3z--lg1XreyWT1LK
3. 依赖倒置原则(Dependence Inversion Principle)
实现尽量依赖抽象,不依赖具体实现。
http://www.it165.net/pro/html/201211/4207.html
4. 接口隔离原则(Interface Segregation Principle)
应当为客户端提供尽可能小的单独的接口,而不是提供大的总的接口。
http://blog.csdn.net/lovelion/article/details/7562842
5. 迪米特法则(Law Of Demeter)
又叫最少知识原则,一个软件实体应当尽可能少的与其他实体发生相互作用。
http://baike.baidu.com/link?url=Wq5VOGggSV8x2Zc_a9KfFW-sr-U0SvOXOzDr-OiSWoiC1-bGAt-2X6x1FYMEhn43cNAnIdVKVlRuC4V-chLQ7uA9GXpIKdA8RF9zeRBgK_EKInKjvPFY3lTMRPbKUkPVjVArfxDhh5irQFrAQ78kvK
6. 开闭原则(Open Close Principle)
面向扩展开放,面向修改关闭。
http://baike.baidu.com/link?url=lTMwVObVDIOVACCzGOEXe7JtV4CSgF35WlhmlLOAXAyXGmz4d_h0hMNCO5W7kY1I3VqAnOwSOwNCSnhC2-BLYqALAO4RPzpF4uQDiuWK5nAjuf1hmoYg0QAkyEZuyrfG
7. 组合/聚合复用原则(Composite/Aggregate Reuse Principle CARP)
尽量使用合成/聚合达到复用,尽量少用继承。原则: 一个类中有另一个类的对象。