软件架构设计原则 : 开闭原则、依赖倒置原则、单一职责原则、接口隔离原则、迪米特法则、里氏替换原则、合成服用原则

 

1.开闭原则

(1)通过接口或抽象类约束扩展,对扩展进行边界限定;

(2)参数类型、引用对象尽量使用接口或者抽象类,而不是实现类;

(3)抽象层尽量保持稳定,一旦确定就不允许修改;

(4)将相同的变化封装在一个接口或抽象类中;

(5) 将不同的变化封装到不同的接口或抽象类中。

2.依赖倒置原则

依赖倒置原则(Dependence Inversion Principle)是程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。

3.单一职责原则
 

定义:不要存在多于一个导致类变更的原因
一个类/接口/方法只负责一项职责或职能


优点:

降低类的复杂度;
提高类的可读性,因为类的职能单一,看起来比较有目的性,显得简单;
提高系统的可维护性,降低变更程序引起的风险。

缺点:
如果一味追求这个单一职责,有时也会造成类的大爆炸。。。。。。。不过接口和方法应该遵循这个原则。
 

4.接口隔离原则

客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。

使用多个专门的接口比使用单一的总接口要好。

一个类对另外一个类的依赖性应当是建立在最小的接口上的。

一个接口代表一个角色,不应当将不同的角色都交给一个接口。没有关系的接口合并在一起,形成一个臃肿的大接口,这是对角色和接口的污染。

“不应该强迫客户依赖于它们不用的方法。接口属于客户,不属于它所在的类层次结构。”这个说得很明白了,再通俗点说,不要强迫客户使用它们不用的方法,如果强

你可能感兴趣的:(软件架构设计原则 : 开闭原则、依赖倒置原则、单一职责原则、接口隔离原则、迪米特法则、里氏替换原则、合成服用原则)