依赖倒置原则(学习笔记)

抽象不应该依赖细节,细节应该依赖抽象。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。

依赖倒转原则是基于这样的设计理念:相对于细节的多变性,抽象的东西要稳定的多。

以抽象为基础搭建的架构比以细节为基础的架构要稳定的多。在java中,抽象指的是接口或抽象类,细节就是具体的实现类。

使用接口或抽象类的目的是制定好规范,而不涉及任何具体的操作,把展现细节的任务交给他们的实现类去完成。

我认为依赖倒转原则的一个特征就是一些方法的参数是抽象类型的

上面代码可以看到已经组装了一台电脑,但是似乎组装的电脑的cpu只能是Intel的,硬盘只能是希捷的,这对用户肯定是不友好的,用户有了机箱肯定是想按照自己的喜好,选择自己喜欢的配件。

代码我们只需要修改Computer类,让Computer类依赖抽象(各配件的接口),而不是依赖各个组件具体的实现类。

相关推荐
周杰伦fans14 天前
依赖倒置原则(DIP)Dependency Inversion Principle
数据库·依赖倒置原则
口袋物联25 天前
图解码说-六大设计原则(开闭原则、单一职责原则、里氏替换原则、接口隔离原则、依赖倒置原则、迪米特法则)
接口隔离原则·依赖倒置原则·里氏替换原则·开闭原则·单一职责原则·设计模式原则·迪米特法原则
Mr_WangAndy1 个月前
C++设计模式_行为型模式_策略模式Strategy
c++·设计模式·策略模式·依赖倒置原则
我真的是大笨蛋2 个月前
依赖倒置原则(DIP)
java·设计模式·性能优化·依赖倒置原则·设计规范
StevenGerrad2 个月前
【读书笔记】架构整洁之道 P5-2 软件架构
设计模式·架构·软件工程·依赖倒置原则·开闭原则
努力也学不会java3 个月前
【设计模式】三大原则 单一职责原则、开放-封闭原则、依赖倒转原则
java·设计模式·依赖倒置原则·开闭原则·单一职责原则
WISHMELUCK1'5 个月前
设计模式的六大设计原则
设计模式·接口隔离原则·依赖倒置原则·里氏替换原则·迪米特法则·合成复用原则·单一职责原则
蓝桉~MLGT5 个月前
spring6合集——spring概述以及OCP、DIP、IOC原则
spring·依赖倒置原则·开闭原则
常某某的好奇心7 个月前
开闭原则与依赖倒置原则区别:原类不变,新增类(功能)vs 接口类不变,原实现类可变
依赖倒置原则·开闭原则
龙仔7257 个月前
compat-openssl10和libnsl下载安装
ssl·依赖倒置原则·opentsdb