设计原则-DIP依赖倒置原则

1.定义

高层模块不应该依赖低层模块,它们都应该依赖抽象。抽象不应该依赖于细节,细节应该依赖于抽象。

代码要依赖于抽象的类,而不要依赖于具体的类。要针对接口或抽象类编程,不要针对具体实现类编程。

2.分析

为什么使用依赖倒置原则?

1)增加松耦合

抽象接口不改变,具体类实现接口,具体类容易扔掉,更换。

2)增加隔离

3.示例

首先看一个违反DIP的示例,按钮控制开灯和关灯。存在的问题是,高层策略依赖于低层模块,抽象依赖于具体细节。

 

改进的方法,Button调用Server接口,Lamp实现Server接口。实现高层依赖抽象,具体实现也依赖于抽象。

 

posted @ 2020-04-19 16:12  windpoplar  阅读(167)  评论(0编辑  收藏  举报