控制反转是一种设计原则,有助于反转对象创建的控制。
根据马丁·福勒(Martin Fowler)的论文,控制反转是程序控制流反转的原理:外部源(框架,服务,其他组件)代替程序控制程序流,而由程序控制流它。就像我们将某些东西插入其他东西一样。他提到了有关EJB 2.0的示例。
依赖注入是一种实现IOC原理的设计模式。DI提供对象所需的对象。假设类X依赖于Y。因此,我们可以通过构造函数或setter注入来注入依赖关系,而不是在类“ X”内创建Y的对象。
序号 | 键 | 国际奥委会 | 依赖注入 |
---|---|---|---|
1 | 设计原理 | 是程序的控制流程反转的设计原理 | 它是国际奥委会原则的子类型之一 |
2 | 实作 | 这是一个由多个设计模式服务定位器,事件,委托和依赖注入实现的术语 | DI是可以通过构造函数和setter注入实现的设计模式 |
3 | 用例 | 面向方面的编程是实现IOC的一种方法 | 如果业务需求发生变化,则无需更改代码 |