设计模式
设计模式原则
单一职责原则
Single Responsibility Principle, SRP
实现类要职责单一,这样某一职责变动时不会破环其他职责
开闭原则
The Open-Closed Principle, OCP
“实体”应该允许在不修改其源代码的情况下扩展功能
里氏替换原则
Liskov Substitution Principle, LSP
所有引用基类的地方必须能透明地使用其子类的对象
最少知识原则
Least Knowledge Principle, LKP
一个对象应该对其他对象有最少的了解,即一个类应该对自己需要耦合或调用的类知道得最少,只关注自己调用的public方法,其他的一概不关心。
接口隔离原则
Interface segregation principle, ISP
客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上,接口尽量细化,同时接口中的方法尽量少
依赖倒置原则
Dependency inversion principle, DIP
高层模块不应该依赖低层模块,二者都应该依赖其抽象(即面向接口编程)
总结
- 单一职责原则告诉我们实现类要职责单一;
- 里氏替换原则告诉我们不要破坏继承体系;
- 依赖倒置原则告诉我们要面向接口编程;
- 接口隔离原则告诉我们在设计接口的时候要精简单一;
- 最少知识原则(迪米特法则)告诉我们要降低耦合;
- 开闭原则是总纲,告诉我们要对扩展开放,对修改关闭。