设计原则03:会修电脑不会修收音机-依赖倒转原则
系列总链接:https://blog.csdn.net/qq_22122811/article/details/112360387
会修电脑不会修收音机-依赖倒转原则:(截图来自于《大话设计模式》)
思考:
程序有没有用到过的这个地方?
这里大致明白意思是:高层模块和底层模块间依赖性不应过强,应该需要标准的接口,通信的内存接口,通用的主板接口。
启发:
依赖倒转原则,有三点,高低层模块之间不能相互依赖,这一点联想到主板和内存间的关系,就可以理解,在程序中可以理解为主程序块,和功能性模块,只需要接口相互传递,但相互的内部实现不应该影响,就和SQL操作模块和主程序模块不应该互相影响;
第二点,抽象不应该依赖于细节,细节应该依赖抽象;
参照博客:https://www.cnblogs.com/cbf4life/archive/2009/12/15/1624435.html
进一步理解,抽象不依赖细节,就是说IDriver不能依赖于某一牌子的车型,所以IDriver中驾驶的车应该也为抽象类,不能是细节,即某类型车;
细节应该依赖于抽象,就是说由IDriver分配的变量zhangsan应该具有IDriver的方法Drive(), 并且需要基于此,实现自己的方法体,即“契约精神”。
设计原则03:会修电脑不会修收音机-依赖倒转原则相关推荐
- 第 5 章 会修电脑不会修收音机 —— 依赖倒转原则
抽象不应该依赖细节,细节应该依赖抽象.针对接口编程,不要针对实现编程. A:高层模块不应该依赖低层模块.两个都应该依赖抽象. B:抽象不应该依赖细节.细节应该依赖抽象. 为什么要叫倒转? 面向过程的开 ...
- Java设计模式 - 依赖倒转原则
文章目录 1. 违反依赖倒转原则 2. 遵守依赖倒转原则 3. 依赖关系传递的3种方式 3.1 接口传递 3.2 构造方法传递 3.3 setter方法传递 4. 依赖倒转原则的注意事项和细节 Dep ...
- 设计原则04:会修电脑不会修收音机-里氏代换
系列总链接:https://blog.csdn.net/qq_22122811/article/details/112360387 会修电脑不会修收音机-里氏代换:(截图来自于<大话设计模式&g ...
- 大话设计模式(十 会修电脑不会修收音机?——聊设计模式原则)
(续上篇) 小菜学会了反射后,正在兴奋,想着大鸟的问题.此时,突然声音响起. "死了都要爱,不淋漓尽致不痛快,感情多深只有这样,才足够表白.死了都要爱--" ...
- 《大话设计模式》之--第5章 会修电脑不会修收音机?----依赖倒转原则
第5章 会修电脑不会修收音机?----依赖倒转原则 5.1MM请求修电脑 小莱和大鸟吃完晚饭后,在一起聊天. 此时,突然声音响起. "死了都要爱,不淋滴尽致不痛快,感情多深只有这样,才足够表 ...
- 从零开始学习Java设计模式 | 软件设计原则篇:依赖倒转原则
在本讲,我将为大家介绍软件设计原则里面的第三个原则,即依赖倒转原则. 概述 什么是依赖倒转原则呢?我们来看一下下面这段描述: 高层模块不应该依赖低层模块,两者都应该依赖其抽象:抽象不应该依赖细节,细节 ...
- Java设计模式之设计的6大原则(开闭原则,里氏代换原则,依赖倒转原则,接口隔离原则,最少知道原则,合成复用原则)
1. 开闭原则 核心思想:一个对象对外扩展开发,对修改关闭 意思就是:对类的改动是通过增加代码进行的,而不是修改现有的代码. 也就是说软件开发人员一旦写出了可以运行的代码,就不应该去改动它,而是要保证 ...
- 软件设计原则——依赖倒转原则
依赖倒转原则 高层模块不应该依赖低层模块,两者都应该依赖其抽象: 抽象不应该依赖细节,细节应该依赖抽象. 简单的说就是要求对抽象进行编程,不要对实现进行编程, 这样就降低了客户与实现模块间的耦合. [ ...
- 设计模式的七大设计原则:其三:依赖倒转原则
依赖倒转原则: 基本介绍: 依赖倒转原则(Dependence Inversion Principle)是指: 1.高层模块不应该依赖低层模块,二者都应该依赖其抽象 2.抽象不应该依赖细节,细节应该依 ...
最新文章
- Linux下编译运行C程序
- Java实用教程笔记 子类与继承2
- linux 控制台输入命令无效_在控制台输入什么命令都提示commandnotfound原因是什么?suselinux...
- [bmgr]android应用数据备份以及还原
- java并发编程:设计原则与模式_java编程设计模式一——策略模式
- 在ASP.NET MVC应用程序中实现Server.Transfer()类似的功能
- [zw]薰衣草/紫花苜蓿+桑椹/(黑红蓝)霉等植物
- winform基础,主要控件简单介绍,以及小练习
- 点击列表高亮_办公小技巧:妙用条件格式 高亮显示查询结果
- 淘宝、天猫、京东、苏宁等平台抢购脚本
- 使用chkconfig管理开机自启动
- alt+tab突然不能切换窗口(樱桃机械键盘)
- 使用Cython提高python代码执行速度
- 设置-关于手机里显示IMEI号和MEID。
- 忘记保存,如何利用历史版本找回丢失的Word文件
- AJAX异步判断注册用户名是否重复
- tensorflow学习笔记-bili莫烦
- android 画字体并换行,android 使用canvas画字符时换行(用TextPaint实现,Paint不易实现)...
- JS - 获取选中复选框的值(checkBox)
- 不错的JSP论坛(有源码)