设计模式时的相关原则
2009-08-24 09:44
351 查看
开闭原则(Open-Closed Principle OCP):
Software entities should be open for extension, but closed for modification.
这个模块可以在不被修改的前提下被扩展。(不修改源代码而改变模块的行为)
例如:策略模式
里氏代换(Liskov Substitution Principle LSP):
从抽象化到具体化的导出要使用继承关系和里氏代换原则。
子类可以替代父类,并且不影响功能(可以增加新的行为)。
依赖倒转原则(Dependence Inverion Principle DIP):
依赖于抽象,不要依赖于具体。高层模块应该是可复用的。
接口隔离原则(Interface Segregation Principle ISP):
一个类对另一个类的依赖性应当是建立在最小的接口上的。
合成/聚合复用原则(Composite/Aggregate Reuse Principle CARP):
在一个新的对象里使用一些已有的对象,使之成为新对象的一部分;新对性通过这些对象的委派达到复用已有的功能的目的。
尽量的使用合成/聚合,不要使用继承(继承是对父类的特殊化)
迪米特法则(Law of Demeter LoD) [最少知识原则 Least Knowledge Principle LKP]
一个对象应当对其他对象有尽可能少的了解。(可以和依赖倒转原则配合使用)
Software entities should be open for extension, but closed for modification.
这个模块可以在不被修改的前提下被扩展。(不修改源代码而改变模块的行为)
例如:策略模式
里氏代换(Liskov Substitution Principle LSP):
从抽象化到具体化的导出要使用继承关系和里氏代换原则。
子类可以替代父类,并且不影响功能(可以增加新的行为)。
依赖倒转原则(Dependence Inverion Principle DIP):
依赖于抽象,不要依赖于具体。高层模块应该是可复用的。
接口隔离原则(Interface Segregation Principle ISP):
一个类对另一个类的依赖性应当是建立在最小的接口上的。
合成/聚合复用原则(Composite/Aggregate Reuse Principle CARP):
在一个新的对象里使用一些已有的对象,使之成为新对象的一部分;新对性通过这些对象的委派达到复用已有的功能的目的。
尽量的使用合成/聚合,不要使用继承(继承是对父类的特殊化)
迪米特法则(Law of Demeter LoD) [最少知识原则 Least Knowledge Principle LKP]
一个对象应当对其他对象有尽可能少的了解。(可以和依赖倒转原则配合使用)
相关文章推荐
- 设计模式之相关原则
- 设计模式相关连接
- 设计模式的原则
- 设计模式中的设计原则之最小知识原则(Least Knowledge Principle - LKP)
- 设计模式之6大原则(3)-依赖倒置原则
- 设计模式的六大原则
- 设计模式之程序设计原则
- 设计模式之六大原则——依赖倒置原则(DIP)
- 设计模式六大原则之三:依赖倒置原则
- 设计模式之四——开放-封闭原则
- C++设计模式---桥接模式—合成/聚合复用原则
- 设计模式六大原则(5):迪米特法则
- 面向对象思想设计原则及常见设计模式
- 设计模式之设计模式原则
- 常见23种设计模式和设计模式六大原则,你用了多少?
- 设计模式六大原则(6):开闭原则
- java设计模式之6大设计原则day01
- 设计模式六大原则——里氏替换原则
- 设计模式 之 设计的 六大原则(6) 开放封闭原则
- 设计模式6大原则之接口隔离原则(Interface Segregation Principle)