面象对象设计6大原则之五:依赖倒置原则


依赖倒置原则(DIP),The Dependency Inversion Principle

定义

1、高层模块不应该依赖低层模块,两都应该依赖于抽象。

2、抽象不依赖于具体细节。

3、具体细节应该依赖于抽象。

抽象就是指接口或者抽象类,细节是指实现接口或者抽象类的具体实现类。

也就是说模块之间的依赖通过接口或抽象发生的,两个实现细节之间不能直接发生依赖,接口不能依赖实现,实现应该依赖抽象。

我们在进行分布式系统开发时,比如常用的dubbo框架,各个系统的连接都是通过接口发生的,只要依赖对方的接口就行了,而不需要知道对方的实现,更不可能依赖对方的实现类,在实际开发中只要其他模块的人把接口定义好就行了,先按接口提供的参数开发,等真正实现类都开发完了再一起联调。其他两条就更好理解了,依赖都只能依赖其抽象,而不是具体实现类。

所以,采用依赖倒置原则最大的特点是减少了类与类之间的耦合性,良好的支持各个模块并行开发互不影响,也提高了系统的可读性、可维护性和可扩展性。

相关文章

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