依赖倒转原则

前端之家收集整理的这篇文章主要介绍了依赖倒转原则前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

依赖倒转原则


依赖倒转原则:

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

2、抽象不应该依赖细节,细节应该依赖抽象。

就是要针对接口编程,不要对实现编程,如果不管是高层模块还是低层模块,它们都依赖于抽象,具体一点就是接口或抽象类,只要接口是稳定的,那么任何一个的更改都不用担心其他的收到影响,这就使得无论高层模块还是底层模块都可以很容易的被复用。


在编程中的具体体现:

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

2、接口或抽象类,不依赖于实现类。

3、实现类依赖接口或抽象类。


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

就是高层模块可以更改,底层模块也可以更改,但是它们都是依赖于接口,也就是抽象编程的,无论怎么改动都可以链接使用,都可以被调用,这样就可以很容易的被复用。

举例说明:拿电脑主机来说,主板、cpu、内存条,硬盘等等,他们都是依赖于接口的,并不是依赖于具体的某个品牌,我们可以换主板,但是其他的比如内存条,cpu,硬盘等等,都不需要更换,我们也可以更换内存,或者是cpu、硬盘等其中的任何一个部件,但是也不需要更换主板。


依赖的三种写法:

依赖是可以传递的,比如A对象依赖B对象,B对象又依赖C对象,C对象又依赖于D对象……等等,只要做到抽象依赖,即使是多层依赖也无所畏惧。

对象的依赖通过三种方式来进行:

1、构造函数传递依赖对象。

2、Setter方法传递依赖对象。

3、接口声明依赖对象,也叫做接口注入。


使用依赖倒转原则,应遵循的规则:

1、每个类尽量都有接口或抽象类,或者抽象类和接口两者都具备,这是依赖倒置原则的基本要求,接口和抽象类都是属于抽象的,有了抽象才可能依赖倒置。

2、变量的表明类型,尽量是接口或者是抽象类。

3、任何类都不应该从具体类派生。

4、尽量不要覆写,基类的方法

5、结合里氏代换原则使用。

猜你在找的设计模式相关文章