S.O.L.I.D 原则
面向对象的编程并不能防止难以理解或不可维护的程序。因此,Robert C. Martin 制定了五项指导原则,使开发人员很容易创建出可读性强且可维护的程序。这五项原则被称为 S.O.L.I.D 原则(这种缩写是由 Michael Feathers 提出的):
- S:单一职责原则 (The Single Responsibility Principle)
- 相关的特性放在一起,因相同的原因而改变
O:开闭原则 (The Open Closed Principle )
- 如何区别相关特性?继承
- 是否真的不可修改 ?可扩展时,不可修改
注:印证了“没有通过增加中间层(继承)不能解决的问题”
- L:里氏替换原则 (Liskov Substitution Principle )
- 继承中,父类与子类的关系?子类无隙替换父类
- I:接口隔离原则 (The Interface Segregation Principle )
- 如果继承产生了冗余接口?定义细粒度接口
- D:依赖倒置原则 (The Dependency Inversion Principle )
- 不同模块之间如何产生联系?模块间的依赖是通过抽象发生
- 相对于细节的多变性,抽象的东西要稳定的多