设计模式的原则——依赖倒置原则

前言:学习设计模式,必定会接触到设计模式原则,所以碰到的时候也加深一下设计模式的原则。

依赖倒置原则(Dependence Inversion Principle)

定义:是程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。

  A.高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。

  B.抽象不应该依赖于具体实现,具体实现应该依赖于抽象。

类图:

为什么?

  如果高层模块直接依赖低层模块,则类图如下,这时,如果低层模块有一点小小的变动,高层模块就有可能需要跟着变动,这样的耦合太高。

  可以详见:百度百科(https://baike.baidu.com/item/%E4%BE%9D%E8%B5%96%E5%80%92%E7%BD%AE%E5%8E%9F%E5%88%99/6189149)

 总结:

  依赖倒转原则其实可以说是面向对象的标志,用哪种语言来编写程序不重要,如果编写时考虑的都是如何针对抽象编程而不是针对细节编程,即程序中所有的依赖关系都是终止于抽象类或者接口,那这就是面向对象设计,反之就是过程化的设计了。

原文地址:https://www.cnblogs.com/yuxiaole/p/9280304.html