第2章 面向对象设计原则
1.单一职责原则
一个对象应该只包含单一的职责,且该职责被完整地封装在一个类中。
2.开闭原则
一个软件实体应当对扩展开放,对修改关闭。(模块可以在不被修改的前提下被拓展,实现在不修改源代码的情况下改变这个模块的行为)
3.里氏代换原则
所有引用基类(父类)的地方必须能透明地使用其子类的对象。
实现开闭原则的重要方式之一
4.依赖倒转原则
针对抽象/接口编程,而不针对具体/实现编程。
5.接口隔离原则
使用多个专门的接口来取代一个统一的接口。
6.合成复用原则
降低耦合,多用关联,少用继承。
7.迪米特法则
一个软件实体对其他实体的引用越少越好,或者说如果这两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用,而是通过引入一个第三者发生间接交互。