设计模式之6大原则(3)-依赖倒置原则
发布时间:2020-12-13 23:03:26 所属栏目:百科 来源:网络整理
导读:依赖倒置原则 所谓依赖倒置原则(Dependence Inversion Principle)就是要 依赖于抽象,不要依赖于具体 。简单的说就是要求对抽象进行 编程 ,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。 一个应用中的重要策略决定及业务模型正是在这些高层
依赖倒置原则 所谓依赖倒置原则(Dependence Inversion Principle)就是要依赖于抽象,不要依赖于具体。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。
一个应用中的重要策略决定及业务模型正是在这些高层的模块中。也正是这些模型包含着应用的特性。但是,当这些模块依赖于低层模块时,低层模块的修改将会直接影响到它们,迫使它们也去改变。这种境况是荒谬的。应该是处于高层的模块去迫使那些低层的模块发生改变。应该是处于高层的模块优先于低层的模块。无论如何高层的模块也不应依赖于低层的模块。而且,我们想能够复用的是高层的模块。通过接口实现的形式,我们已经可以很好地复用低层的模块了。当高层的模块依赖于低层的模块时,这些高层模块就很难在不同的环境中复用。但是,当那些高层独立于低层模块时,它们就能很简单地被复用了。这正是位于框架设计的最核心之处的原则。
总结:依赖倒置原则
A.高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。
B.抽象不应该依赖于具体,具体应该依赖于抽象。
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- c# – 从另一个类和线程的接口回调更新winform
- 有关SQLite数据库的一些实证数据,有一定历史比较和参考意义
- c# – 保存单个实体而不是整个上下文
- 为什么(几乎)所有用ActionScript(Flash)编写的在线游戏都不
- ruby-on-rails – 使用rails控制台时的换行符(终端)
- 【tensorflow2.0】处理图片数据-cifar2分类
- ruby-on-rails – 使用SendGrid模板的Rails Mailer
- 同伴之间的C友谊健康吗?
- semantic-ui-react – React Semantic UI中的内联弹出/工具
- ruby-on-rails – 如何在rails中创建可逆迁移帮助程序?