【发布时间】:2009-03-03 12:00:23
【问题描述】:
“依赖倒置原则”(DIP)和“接口设计原则”表达的原则相同吗?如果不是,有什么区别?
编辑
为了澄清和缩小上下文:接口是指编程接口,如 Java interface 或 C++ 中的纯抽象基类。不涉及其他“合同”。
【问题讨论】:
-
你的意思是依赖注入(又名控制反转)?
-
我在 Google 上找不到任何关于“接口设计原则”的信息 - 你能解释一下你的意思吗?
-
您的意思可能是“按合同设计”
-
正确的引用是“Program to an interface, not an implementation”(来自 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 所著的“设计模式:可重用软件架构的元素”一书)。