控制反转<依赖注入

我感觉到没有控制倒置这样的事情,或者说正确的术语是依赖注入。 我认为这是错误的吗?

我一直在试图为我自己定义IoC。 在这样做的过程中,我学到了很多关于IoC容器和依赖注入的知识。

刚才我从马丁福勒的网站上看到这个消息:

因此我认为我们需要一个更具体的名称来表示这种模式。 控制反转是一个过于笼统的术语,因此人们感到困惑。 由于与各种IoC倡导者进行了大量讨论,我们决定使用名称Dependency Injection。

在现代IoC的世界中,不是依赖注入只是实现IoC的一种方式?


如果您接受Fowler的定义,控制反转是一个比DI 更广泛的术语,涵盖了插入框架的所有框架用法,但框架仍处于控制之中。

例如,在.NET中,诸如ASP.NET或Windows Presentation Foundation之类的框架最终得到控制,但提供了可用于构建应用程序的各种事件Seams 。 其他平台也是如此。

依赖注入是IoC的一个专门技术 ,专门用于管理依赖关系。


这是我和Mark不同意的几点之一。 在我的书中,控制反转原理和这里一样,所以我不会重复它。

依赖注入是仅仅通过组件依赖外部化创造对外界的行为。

管理这些依赖关系(以及其他许多东西)是控制容器的反转操作,并将DI作为其一部分,仅仅是一个实现细节。


是的,IoC意味着班级本身不控制事情,而是从外部调用。 依赖注入是实现这一目标的方法。

依赖注入确实是一个更具体的术语,比控制的倒置更明确。

链接地址: http://www.djcxy.com/p/30213.html

上一篇: Inversion of Control < Dependency Injection

下一篇: Concrete Code Example of MVP