IoC

IoC(控制反转)/DI(依赖注入)

  1. 涉及到的疑问
    1. 参与者都有谁?
    2. 谁依赖谁?为什么需要依赖
    3. 谁注入谁?为什么需要注入
    4. 谁控制谁?控制什么?为什么需要反转?什么是反转?什么是转?
    5. Ioc==DI?
  2. 开始回答
    1. 参与者都有谁?
      一个是对象,一个IoC容器,一个是对象的外资源,如对象依赖的对象。
    2. 谁依赖谁?为什么需要依赖
      初代:对象依赖外部资源,对象需要外部资源完成自己的动作。
      Ioc后:对象依赖Ioc容器,需要Ioc容器注入外部资源。
    3. 谁注入谁?为什么需要注入?
      Ioc容器注入外部资源到对象中,控制反转后,对象失去了对外部资源的控制,需要容器进行外部资源的注入。
    4. 谁控制谁?控制什么?为什么需要反转?什么是反转?什么是转?
      调用类对实现类选择的控制
      调用类需要的实现类由第三方控制,实现的代码解耦
      将实现类的选择交给了容器来指定失去的了对实现类的控制,交给容器处理。
      控制权的转移
    5. Ioc==DI?
      Ioc控制反转突出 控制权的移交,一个是结果,只要是移交出去都是控制反转。
      DI是控制权的移交后进行使用,一个是过程,ioc的一种实现方式。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容