浅谈IoC(控制反转)和DI(依赖注入)

控制反转(IoC)

1.控制反转并不是一种技术,而是基于容器的一种设计思想。
2.控制反转是将外部容器作为一个管理者,它管理着所有bean的生命周期和bean之间的联系,在项目运行时主动地将对象A想要的东西给对象A,也可以将对象A传递给需要它的对象,容器管理着所有bean的创建与销毁,是整个spring的核心,这也是将程序代码的控制权转移到了容器手中,也就是控制反转的含义。
3.控制反转是对解耦思想的一种应用,将对程序代码的强依赖转变成弱依赖,大大提升了维护的效率。

依赖注入(DI)

依赖注入更像是对控制反转思想的一种应用,在一个对象需要用到另一个对象时,直接通过外部注入的方式将要用的对象注入到类中,不用在代码内直接创建调用者,这样就可以减少耦合的产生,能有效减少后期维护的成本。

总结:

耦合性是一个程序员在创建项目时应该考虑的事情,它直接关系到一个项目的代码编写与后期维护的成本,而控制反转和依赖注入都是为了解决解耦的问题而产生的思想,控制反转和依赖注入都是在描述解耦的方式,区别在于控制反转更像是一种思想,而依赖注入更多的是一种应用方式。


本博客是在学习过程中的感悟,有不足和理解错误之处望各位指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值