回顾:软件设计原则
1)开闭原则:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭
2)单一职责原则:一个类一个接口一个方法只做一件事,保证类 接口 方法功能的单一性和纯洁性
3)依赖倒置原则:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责
4)接口隔离原则:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。
5)迪米特法则:一个对象应该对其他对象保持最少的了解
6)里氏替换原则:
定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型。
定义2:所有引用基类的地方必须能透明地使用其子类的对象。
7)合成复用原则:尽量使用对象的组合、聚合而不使用继承关系达到代码复用的目的