设计模式一:依赖倒置原则

Dependence Inversion Principle(DIP): High level modules should not depend upon low level modules. Both should depend upon abstractions. Abstractions should not depend upon details. Details should depend upon abstractions.

依赖倒置原则:高层模块不应依赖底层模块,两者都应该依赖于抽象。抽象不应该依赖细节,细节应该依赖于抽象。


依赖倒置原则包含的意思是:

1.模块之间的依赖关系通过抽象类或者接口来表现。具体的模块之间最好不要有直接的依赖关系。

2.抽象类或接口不要依赖于实现它的类。

3.具体的类依赖于抽象类或者接口来与其他模块联系。


即Object-Oriented Design(OOD)——面向接口编程


依赖倒置原则有助于提高系统的稳定性,降低并行开发引起的风险,提高代码的可读性和可维护性。一套设计合理的接口是相对稳定的,当需求变化时,只要接口不变,具体类的修改是相对容易的。对并行开发来说,如果接口已经明确定义,那么各个团队开发过程之间相互的影响可以得到明显的降低。


所以,程序中的每个类最好对应于一个抽象类或接口;依赖关系的表示也最好用抽象类型;类继承的层次最好不要超过两层。


依赖倒置原则和开发封闭原则有很大的联系。

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...