设计模式之六大原则

设计模式的六大原则都是为了实现代码的高内聚低耦合。高内聚低耦合的进一步实现是设计模式的六大原则,设计模式的六大原则进一步实现就是设计模式。

一、单一职责原则

单一职责原则(Single Responsibility Principle, SRP) :一个类只负责一个功能领域中 的相应职责,或者可以理解为为了复用而进行合理分类,最终实现高内聚。

二、开闭原则

开闭原则(Open-Closed Principle, OCP) :一个软件实体(基类)应当对扩展开 放,对修改关闭。即软件实体(基类)应尽量在不修改原有代码的情况下进行扩展。也就是增加功能通过子类,不能在基类中修改。

三、里氏替换原则

里氏代换原则(Liskov Substitution Principle, LSP) :所有引用基类(父类)的地方必须能透明地使用其子类的对象

里氏代换原则告诉我们, 在软件中将一个基类对象替换成它的子类对象,程序将不会产生任何错误和异常,反过来则不成立,如果一个软件实体使用的是一个子类对象的话,那么它不一定能够使用基类对象。例如:我喜欢动物,那我一定喜欢狗,因为狗是动物的子类;但是我喜欢狗,不能据此断定我喜欢动物,因为我并不喜欢老鼠,虽然它也是动物。

四、依赖倒置原则

依赖倒转原则(Dependency Inversion Principle, DIP) :抽象不应该依赖于细节,细节应当依赖于抽象。换言之,要针对接口编程,而不是针对实现编程。

五、接口隔离原则

接口隔离原则(Interface Segregation Principle, ISP) :使用多个专门的接口,而不使用单一的总接口,即客户端不应该依赖那些它不需要的接口。

六、迪米特原则

迪米特法则(Law of Demeter, LoD) :一个软件实体应当尽可能少地与其他实体发生相互作用。迪米特法则可降低系统的耦合度,使类与类之间保持松散的耦合关系。

推荐阅读更多精彩内容