What is the formal definition of Inversion of Control?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
What is Inversion of Control?
我总是听到用模糊的术语描述的控制反转,几乎总是通过例子而不是形式化的定义。
一方面,我听说它是用对象编程到抽象,放弃对显式实例化一个新对象的控制和它的对象图来描述的,而不是请求那些将它们的依赖项注入到运行时条件中的对象。
然后,我听到它用针对框架的编程来解释,在这种框架中,程序员放弃了控制流,而倾向于对扩展点(如事件和回调)进行编码。
在这两种情况下,究竟是什么被颠倒了,他们有什么共同点,即他们是国际奥委会的典型代表。我发现很难找到一个普遍接受的定义
这当然是一个合理的解释:
http://en.wikipedia.org/wiki/inversionu控制
我拥有这本书:我建议它能很好地涵盖许多设计原则,包括国际奥委会:
C中的敏捷原则、模式和实践:Martin Fowler、Micah Fowler
您可能还会发现这些链接很有用:
简单c中的di和ioc示例#
控制反转<依赖注入
两个简单的"解释":
国际奥委会有时被称为"好莱坞原则":不要打电话给我们,我们会打电话给你
IOC=婚姻;IOC容器=妻子