zoukankan      html  css  js  c++  java
  • 依赖倒置原则

    1 英文名字

    dependence inversion principle

    2 本质

    上层模块不直接依赖于下层模块,而是上下层模块都依赖于抽象接口。上层模块中保存抽象接口的引用,而下层模块实现该抽象接口。

    原理图如下:

    原来的依赖关系,上层模块依次依赖下层模块

    新的依赖关系,上下层模块都依赖于抽象接口

    这里的依赖应该从头文件的角度来理解,或者从import的角度来理解,比如上层模块中要保存抽象接口的引用,因此上层模块需要

    import抽象接口,而下层模块需要实现抽象接口,它也需要import该抽象接口,所以说,上下层模块都依赖于抽象接口。

    3 倒置的来历

    如果设计上不使用这个依赖倒置原则的话,那么依赖关系就是figure 1所示了。

    使用了之后,一般会把抽象接口和上层模块放在一个包中,因为抽象接口可能有多个下层实现,放在任何一个下层模块

    的包里面都是不合适的。

    这样的话,下层模块反过来要依赖于上层模块所在的包了。所以,就叫做依赖倒置。

  • 相关阅读:
    016 vue的组件通信
    015 vue组件中的数据
    014 vue的组件化开发
    013 vue的js中的高阶函数
    012 vue的v-model的使用
    011 vue的购书案例
    010 vue的过滤器的使用
    CF1519F
    CF1519E
    CF1517F
  • 原文地址:https://www.cnblogs.com/hustdc/p/6429667.html
Copyright © 2011-2022 走看看