依赖倒置原则

目录

依赖倒置原则

定义

核心思想

重要性

作用

实现方式

其他问题

如何理解依赖倒置原则是实现开闭原则的重要途径之一

依赖倒置原则在现实生活中的体现


依赖倒置原则

定义

1996年,Object Mentor公司总裁罗伯特·马丁(Robert C.Martin)在C++ Report上发表文章提出了依赖倒置原则(Dependence Inversion Principle,DIP)。

依赖倒置原则的原始定义:高层模块不应该依赖于低层模块,二者都应该依赖于抽象;抽象不应该依赖于细节,细节应该依赖于抽象(High level modules should not depend upon low level modules.Both should depend upon abstractions.Abstractions should not depend upon details.Details should depend upon abstractions)。

核心思想

依赖倒置原则的核心思想:要面向接口编程,不要面向实现编程

重要性

依赖倒置原则是实现开闭原则的重要途径之一,依赖倒置原则旨在降低功能使用模块与功能提供模块间的耦合程度

在软件设计中,细节具有多变性,抽象则相对稳定,因此基于抽象搭建的软件架构要比基于细节搭建的软件架构稳定得多。在java中抽象指的是接口或抽象类,细节指的是具体实现类。

作用

依赖倒置的主要作用如下:

  1. 降低类间的耦合度
  2. 提高系统的稳定性
  3. 降低并行开发的风险
  4. 提高代码可读性和可维护性

实现方式

  1. 尽量为每个类提供接口或抽象类。
  2. 变量的声明类型尽量是接口或者抽象类。
  3. 尽量不从具体类派生子类。
  4. 使用继承时尽量遵循里氏替换原则。

其他问题

如何理解依赖倒置原则是实现开闭原则的重要途径之一

开闭原则所追求的是软件开发过程中对既有软件实体的修改最小化甚至完全避免,通过遵循依赖倒置原则能够使软件架构更加稳定,降低了软件修改的风险,所以说依赖倒置原则是实现开闭原则的重要途径之一。

依赖倒置原则在现实生活中的体现

思考一下,如何确保任何工厂生产的插座和插头能一起工作?

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值