最简单直接地理解Java软件设计原则之依赖倒置原则

时间:2023-03-08 23:58:14
最简单直接地理解Java软件设计原则之依赖倒置原则

理论性知识

定义

依赖倒置原则,Dependence Inversion Principle (DIP)

  1. 高层模块不应该依赖低层模块。二者都应该依赖其抽象。
  2. 抽象不应该依赖细节,细节应该依赖抽象。
  3. 针对接口编程,不要针对实现编程。

在我们的程序中,高层模块可以理解成调用方,低层模块可以理解为被调用方。抽象就是指接口或抽象类,细节就是实现类。

优点

减少类之间的耦合,提高系统稳定性,提高代码可读性和可维护性,降低修改程序造成的风险。

实现开闭原则的前提就是要实现依赖倒置原则

代码实战

商城展售手机的场景

依赖细节demo

商城展售手机

最简单直接地理解Java软件设计原则之依赖倒置原则

测试主类

最简单直接地理解Java软件设计原则之依赖倒置原则

根据以上设计方案,如果商城要增加展售vivo品牌手机,就需要增加store的方法。如下两图

最简单直接地理解Java软件设计原则之依赖倒置原则
最简单直接地理解Java软件设计原则之依赖倒置原则

依赖倒置原则demo

定义一个手机接口,提供一个展售方法,如下图

最简单直接地理解Java软件设计原则之依赖倒置原则

定义小米,OPPO,和vivo 3种品牌手机,如下图

最简单直接地理解Java软件设计原则之依赖倒置原则
最简单直接地理解Java软件设计原则之依赖倒置原则
最简单直接地理解Java软件设计原则之依赖倒置原则

定义商城,如下图

最简单直接地理解Java软件设计原则之依赖倒置原则

测试主类

最简单直接地理解Java软件设计原则之依赖倒置原则

在该案例中, 高层模块就是store 商城,低层模块就是 IPhone 手机。

以上就是通过简单的demo对依赖倒置原则的理解。欢迎大家做出评论。