前言
提示:以下是本篇文章正文内容,下面案例可供参考
一、IOC是什么?
介绍:
一 . 对象之间的耦合关系是无法避免的,也是必要的,这是协同工作的基础。如同钟表里的机械齿轮一样,如下所示.
随着工业级应用的规模越来越庞大.对象之间的依赖关系也越来越复杂,经常会出现对象之间的多重依赖性关系.
对象之间耦合度过高的系统,必然会出现牵一发而动全身的情形。为了解决这个问题,于是引出了IOC 理论.
二 .
IOC理论提出的观点大体是这样的:借助于“第三方”实现具有依赖关系的对象之间的解耦
这里IOC 就相当于一个第三方者,将之前每个对象分开进行了对象之间的解耦.从而降低了对象与对象间的耦合性.
观察上面两张图片发现:
如图1所示,对象A依赖于对象B,那么对象A在初始化或者运行到某一点的时候,自己必须主动去创建对象B或者使用已经创建的对象B。无论是创建还是使用对象B,控制权都在自己手上。
软件系统在引入IOC容器之后
由于IOC容器的加入,对象A与对象B之间失去了直接联系,所以,当对象A运行到需要对象B的时候,IOC容器会主动创建一个对象B注入到对象A需要的地方。
我们不难看出来:对象A获得依赖对象B的过程,
由主动行为变为了被动行为,控制权颠倒过来了,
这就是“控制反转”这个名称的由来。
二、DI是什么?
介绍: IOC 的 另外一种表达方式.即组件以一些预先定义好的方式接受来自容器的资源注入.
依赖注入将是我们常用的手段方法.