如何理解依赖倒置原则(DIP原则)

最近在研究设计模式,之前看过GOF的《设计模式基础》,对里面的模式有个大概的了解,但是最近在阅读一些技术源码时,发现对很多设计模式理解不够深入。就比如说最简单的一个概念,什么是依赖倒置原则?估计大家都知道定义

依赖倒置原则:

要依赖抽象,不要依赖具体类

但是究竟什么是依赖倒置原则,在实际过程中需要怎么样去理解与设计。

看一个简单的例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
class A {
create() {
if (xxx) {
return B();
}
if (xxx) {
return C();
}
if (xxx) {
return D();
}
}
}

上图所展示的依赖关系如下:

依赖倒置原则最佳实践:

  1. 变量不可以持有具体类的引用
  2. 不要让类从具体类继承
  3. 不要覆盖基类中已实现的方法
xuzs wechat
欢迎您扫一扫上面的微信,及时与我交流!
坚持原创技术分享,您的支持将鼓励我继续创作!