依赖倒转原则
来源:互联网 发布:友邦群发软件 垃圾 编辑:程序博客网 时间:2024/04/30 23:33
依赖倒转的原则归结为一句话“抽象不应该依赖于细节,细节应该依赖于抽象”。具体说接口不应该依赖于其实现原理,而是应该其实现原理依赖于接口。
在日常开发中,我们经常会高层模块直接调用底层模块,如在高层模块功能中调用低层的数据库功能模块,但这样随即引发了一个令人头大的问题,就是如果我们在开发时临时改换底层的存储方式,而高层模块是与低层的数据库是紧紧地绑定在一起,我们就不得不去修改高层模块,这也就违反了开放-封闭原则,也导致了高层模块不具有复用性。而如果低层数据库的实现方式是针对接口编程,就不需要去在意我们具体使用的是哪种数据库,因为接口提供给我们的方法是一致的。
public interface Database { void data();}class SqlserDatabase implements Database{ void data(){ ... 具体实现 }}class MyDatabase implements Database{ void data(){ ... 具体实现 }}客户端程序中static void Main(string[] args){ Database database; database=new SqlserDatabase();//如果后期需要更换数据库只需新建一个数据库类实现了DataBase,再更改这里的实例化就可以了 database.data();}
总结一下依赖倒转原则就是针对抽象编程,而不是针对实现细节进行编程。
阅读全文
0 0
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则DIP
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则
- 依赖倒转原则学习
- 依赖倒转原则 DIP
- 依赖倒转原则
- 防止表单重复提交
- 解读《“三板斧”-阿里巴巴管理之道》| 余歌
- 适用于所有主流Java编程环境的图表库TeeChart for Java v3.2017.0622发布[附下载]
- Excel在统计分析中的应用—第六章—抽样与抽样分布-Part2(等距抽样)
- 《设计模式——java版》(二)
- 依赖倒转原则
- [ACM模板]AC自动机
- pyQt5搭建的简单的图像处理界面
- Android多渠道打包
- 创建maven工程use default workspace被选中的解决方法
- Layer 多按钮实现
- bzoj 4538: [Hnoi2016]网络
- 单点登陆CAS
- Java常见集合框架(十四):Queue之Queue、BlockingQueue、AbstractQueue