【设计原则】图解何为依赖倒置

依赖倒置原则(Dependence Inversion Principle,DIP)是指设计代码结构时,高层模块不应该依赖低层模块,二者都应该依赖其抽象。

要理解何为倒置,那就先得明确什么是"正向",可以看到下图代码是自上而下地调用,即高层模块依赖底层模块,这就是正向依赖。:

而依赖倒置则是使用抽象接口来降低耦合,可以看到箭头是自下而上的,这就是所谓的倒置。

这时有人说,如果我箭头调转,抽象类在下,实现类在上,那不就变成正向了?

这种观点是不成立的,因为这是 UML 规定抽象类必须在上,实现类在下。

相关推荐
冷咖啡离 我的笨笨21 天前
用最简单的例子,从最简单的设计开始,重构着讲解设计原则与模式——从DIP中“倒置”的含义说接口的正确使用
python·重构·依赖倒置原则
Freak嵌入式25 天前
版本混乱 / 依赖缺失?uPyPi:MicroPython 版 PyPI,彻底解决库管理混乱
linux·服务器·数据库·单片机·嵌入式硬件·性能优化·依赖倒置原则
Freak嵌入式1 个月前
MCU 低功耗模式解析:时钟门控、电源门控、深度休眠
人工智能·python·单片机·嵌入式硬件·开源·依赖倒置原则·micropython
VOOHU-沃虎1 个月前
RJ45到底选DIP还是SMD?封装对产线、返修与机械强度的影响
依赖倒置原则
0点51 胜4 个月前
[MediaForge] 架构之美:依赖倒置原则与好莱坞法则在微内核中的实战
架构·依赖倒置原则
我不是懒洋洋4 个月前
自动化构建工具:make与Makefile从入门到精通
简单工厂模式·接口隔离原则·依赖倒置原则·合成复用原则·单一职责原则
金航标电子4 个月前
小连接器大作用!KH-MICRO-DIP-2P解锁电子设备新体验
依赖倒置原则·连接器·kh-micro-dip-2p·micro-b 母座·湾插·usb连接器
开开心心_Every5 个月前
实用PDF擦除隐藏信息工具,空白处理需留意
运维·服务器·网络·pdf·电脑·excel·依赖倒置原则
WarrenMondeville5 个月前
5.Unity面向对象-依赖倒置原则
unity·设计模式·依赖倒置原则
开开心心就好5 个月前
安卓免费证件照制作软件,无广告弹窗
linux·运维·安全·pdf·迭代器模式·依赖倒置原则·1024程序员节