好的程序应该是有复用的,代码中会有稳定的结构,变化的结构;
对于设计模式来说,就是将变化的模块与稳定的模块设计成相应的模板。
模式设计的原则有以下的:
- 单一职责原则
类的职责要单一,一个类实现一种功能。引起类的修改只有一种原因,这样降低复杂度
- 开放-封闭原则
软件实体(类、函数、模版等)可以扩展,不可以修改。
对程序中频繁变化的部分作出抽象
- 依赖倒置原则
高层模块不应该依赖底层模块,抽象模块不应该依赖具体模块;两者都应该依赖稳定模块。
- 里氏替换原则(LSP)
子类型必须能够替换他们的父类型。--具体还没应用过,需要应用过再补充
- 接口隔离原则
接口应该小而完备,不要强迫客户程序依赖他们不用的方法。
- 迪米特原则(最少知道原则)
一个类对其他对象应该知道的越少越好
- 合成复用原则
组合优先考虑,继承关系其次