【发布时间】:2015-05-02 20:58:37
【问题描述】:
在我读过很多关于依赖注入容器的文章中,还有很多人谈到了 IoC 容器。虽然肯定有一些地方同时提到了两者,但我还没有遇到过。那么问题来了:这两者之间有什么关系?它们是一样的吗?或者是另一个的实现?还是……?
【问题讨论】:
标签: dependency-injection inversion-of-control ioc-container
在我读过很多关于依赖注入容器的文章中,还有很多人谈到了 IoC 容器。虽然肯定有一些地方同时提到了两者,但我还没有遇到过。那么问题来了:这两者之间有什么关系?它们是一样的吗?或者是另一个的实现?还是……?
【问题讨论】:
标签: dependency-injection inversion-of-control ioc-container
我会说它们是两个不同的短语,指的是同一件事,我会冒昧地提出“IOC Container”可能是两者中更惯用/更广泛使用的一个。
我经常听到“依赖注入框架”*而不是“容器”这句话,我想这就是大多数人说“依赖注入容器”时的实际意思>" - 请记住,所有 DI 框架都有一个“容器”,它是保存类型映射的对象,并且是在运行时解析对象图以进行注入的工作的入口点。
例如,在Ninject 依赖注入框架中,StandardKernel 是“容器”。
我希望这没有让你更加困惑:)
*正如 Steven 所指出的,这里的“框架”一词确实可能不准确,而“库”一词可能更正确。无论如何,称它们为“IOC 容器”是不会错的。
【讨论】: