依赖注入(DI)和控制反转(Ioc)

依赖注入(DI)和控制反转(Ioc) 是从两个不同角度描述的同一个概念。


当某个对象(调用者)需要调用另一个对象(被调用者,即被依赖对象)时,调用者通常会采用“new 被调用者”的代码方式来创建对象.


在使用某些框架之后,对象的实例不再由调用者来创建,而是由容器来创建,容器负责控制程序之间的关系,控制权由应用代码转移到了框架,被称为“控制反转”。


从框架的角度来看,框架负责将被依赖对象赋值给调用者的成员变量,这相当于为调用者注入了它依赖的实例,这就是“依赖注入”。


容器,字面上理解就是装东西的东西。在这里容器容纳的是对象、对象的描述(类、接口)或者是提供对象的回调,通过这种容器,可以实现 “依赖注入(DI)”。


参考:

https://segmentfault.com/a/1190000010846788

修改时间 2021-11-16

真诚赞赏,手留余香
赞赏
随机推荐
MySQL报错“1366 - Incorrect integer value: '' for column 'ID' at row 1 ”
macOS如何在终端使用MySQL命令
uniapp 开发笔记 (二)
Webpack 概念理解 module、chunk 和 bundle 的区别
Koa 通过代理获取客户端 IP
Centos 用户和组管理
Android Studio 生成安装包 Android App Bundle 或 APK
为什么日本动漫中会出现大眼睛,多发色,多瞳色
关于mysql的锁表问题
什么是加载占位图(Skeleton Screen Loading)