面向对象设计的六大基本原则

一、单一职责原则SRP Single Responsibility Principle)

  不要存在多于一个导致类变更的原因。通俗来说,即一个类只负责一项职责。

二、里氏替换原则LSP Liskov Substitution Principle)

  1. 如果对每一个类型为T1的 对象o1,都有类型为T2的对象o2,使得以T1定义的所有程序P在所有的对象o1都替换成o2时,程序P的行为没有发生变化,那么类型T2是类型T1的子类型。

  2. 所有引用基类的地方必须能透明地使用其子类对象。

三、依赖倒置原则DIP Dependence Inversion Principle)

  高层模块不应该依赖底层模块,二者都应该依赖其抽象;抽象不应该依赖细节,细节应该依赖抽象;

  要针对接口编程,不要针对实现编程。

四、接口隔离原则ISP Interface Segregation Principle)

  客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。

五、迪米特法则LOD Law of Demeter)

  一个对象应该对其他对象保持最少的了解。

  只与你直接的朋友通信,而避免和陌生人通信。

六、开闭原则OCP Open-Close Principle)

  一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。

posted @ 2017-11-17 17:34  C3Stones  阅读(204)  评论(0编辑  收藏  举报