一、设计模式的目的
设计模式贯穿到软件开发周期,其实包含软件研发设计阶段和软件研发维护阶段,这两个阶段设计模式的侧重点不同。设计阶段更应该着重考虑的是尽量做到高内聚、低耦合,而维护阶段在前者基础上更应该着重考虑的是兼容性。
二、设计模式六大原则之分类
根据设计模式所需达到的目的,对六大原则进行简单分类如下:
1.高内聚
高内聚所包含的原则,涵盖的是类的属性与方法的设计原则。
单一职责:从类的属性维度规定,应该仅有一个引起它变化的原因。
接口隔离:从方法维度规定,每个接口应该尽量小,避免存在派生类用不到的方法。
2.低耦合
低耦合所包含的原则,涵盖的是类与类(父子关系,兄弟关系,无关联)之间的关系。
里氏转换:对于使用软件实体的基类,一定适用于派生类,其实限定的是基类与派生类的关系。
依赖倒转:针对接口编程,不要对实现编程,其实限定的是多个有相同接口,但是行为不同的类的关系。
迪米特法则:限定不直接通信的两个类之间不应直接调用,其实限定的是没有关系的类。
3.兼容性
开放封闭:软件实体可以扩展,但是不可以修改,其实就是维护阶段,对于功能需求需要兼容原有功能,即扩展而非修改。