IoC (控制反转)是什么?两张图让你搞清!

2022-05-15 0 937

简单理解依赖注入(DI,Dependency injection)

依赖注入通过构造注入,函数调用或者属性的设置来提供组件的依赖关系。就是这么简单。

简单理解控制反转(IOC,(Inversion of Control)

IoC (控制反转)是什么?两张图让你搞清!

一开始我们代码依赖关系可能是如图这样的,这里只举例了3个对象和三个类的交叉依赖,我们代码的依赖关系实际情况其实要复杂得多,脑补十多个对象的交叉,甚至还有横向交叉。

现在问题来了,由于不可抗拒的原因,PHP版本升级,需求更改等等,要把α对象替换掉,把β对象删掉,请问我们要改多少处代码??

是时候拿出IOC了。

IoC (控制反转)是什么?两张图让你搞清!

瞬间清爽。

IOC容器在全局维持一个对象实例集合和类名集合,我们在写某个类的时候把这个类依赖的对象注册到容器里,调用这个类的时候再实例化拿出来。

这个就是IOC的思想,一个系统通过组织控制和对象的完全分离来实现”控制反转”。对于依赖注入,这就意味着通过在系统的其他地方控制和实例化依赖对象,从而实现了解耦。

相关推荐:最新的五个Laravel视频教程

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

【声明:根据2013年1月30日《计算机软件保护条例》2次修订第17条规定: 为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存 储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬! 鉴于此,也希望大家按此说明研究软件!】
本站所有源码尽量保证原汁原味,如有特殊情况会作出声明及标注,网站资源不做任何二次加密(原版加密除外,不影响程序使用的不会做解密处理),方便您更好的学习参考。 在您的能力范围内,为了大环境的良性发展,请尽可能的选择正版资源。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

即刻码站__国内靠谱的站长资源下载平台 php教程 IoC (控制反转)是什么?两张图让你搞清! https://www.jike1995.com/35881.html

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务