0
点赞
收藏
分享

微信扫一扫

依赖倒置原则

b91bff6ffdb5 2022-03-22 阅读 62
开发语言

依赖倒置原则(Dependence Inversion Principle)        

        依赖倒置原则的好处:

  • 依赖倒置原则可以降低类间的耦合性。
  • 依赖倒置原则可以提高系统的稳定性。
  • 依赖倒置原则可以减少并行开发引起的风险。
  • 依赖倒置原则可以提高代码的可读性和可维护性。

定义

  • 高层模块不应该依赖低层模块, 两者都应该依赖其抽象;
  • 抽象不应该依赖细节;
  •  细节应该依赖抽象。

        高层模块和低层模块容易理解, 每一个逻辑的实现都是由原子逻辑组成的, 不可分割的
原子逻辑就是低层模块, 原子逻辑的再组装就是高层模块。 那什么是抽象? 什么又是细节
呢? 在Java语言中, 抽象就是指接口或抽象类, 两者都是不能直接被实例化的; 细节就是实
现类, 实现接口或继承抽象类而产生的类就是细节, 其特点就是可以直接被实例化, 也就是
可以加上一个关键字new产生一个对象。 依赖倒置原则在Java语言中的表现就是:

  • 模块间的依赖通过抽象发生, 实现类之间不发生直接的依赖关系, 其依赖关系是通过接口或抽象类产生的;
  • 接口或抽象类不依赖于实现类;
  • 实现类依赖接口或抽象类。

依赖倒置原则的实现方法

        依赖倒置原则的目的是通过要面向接口的编程来降低类间的耦合性,所以我们在实际编程中只要遵循以下4点,就能在项目中满足这个规则。

  • 每个类尽量提供接口或抽象类,或者两者都具备。

      这是依赖倒置的基本要求, 接口和抽象类都是属于抽象的, 有了抽象才可能依赖倒置。

  • 变量的声明类型尽量是接口或者是抽象类。

        很多书上说变量的类型一定要是接口或者是抽象类, 这个有点绝对化了, 比如一个工具
类, xxxUtils一般是不需要接口或是抽象类的。 还有, 如果你要使用类的clone方法, 就必须
使用实现类, 这个是JDK提供的一个规范。

  • 任何类都不应该从具体类派生。
  • 尽量不要覆写基类的方法。

        如果基类是一个抽象类, 而且这个方法已经实现了, 子类尽量不要覆写。 类间依赖的是
抽象, 覆写了抽象方法, 对依赖的稳定性会产生一定的影响。

  • 使用继承时尽量遵循里氏替换原则。

举报

相关推荐

0 条评论