学习笔记之Spring中的IoC&DI

    Spring是为了降低企业级应用开发复杂性而开发的框架,IoC控制反转和DI依赖注入是Spring的核心部分。

IoC:控制反转
    IoC其实是一种思想,让我们从繁琐的对象交互中解脱出来,更注重于对象本身。就是把创建对象和管理对象依赖关系的权力交给IoC容器管理,这种控制权的转移被形象的称为控制反转。

DI:依赖注入
    依赖注入是指Spring 创建对象的过程中,将对象依赖属性通过配置文件或其他形式注入到该对象中。

IoC&DI有什么用?
    传统应用开发时,当某个类需要依赖其他类时,我们都是主动创建出来。引入了IoC&DI之后,所有的类都会在IoC容器中登记,只需告诉容器你是个什么东西,你需要什么东西,然后spring会在系统运行到适当的时候,把你要的东西主动给你,同时也把你交给其他需要你的东西,这样就能降低了类与类之间的耦合度。

IoC和DI的关系
    IoC和DI是从不同的角度描述同一件事情,或者说通过依赖注入的方式实现了控制反转思想。

参考 Martin Fowler 2004年写的《nversion of Control Containers and the Dependency Injection pattern》

2004年,Martin Fowler 探讨了同一个问题,既然IOC是控制反转,那么到底是“哪些方面的控制被反转了呢?”,经过详细地分析和论证后,他得出了答案:“获得依赖对象的过程被反转了”。控制被反转之后,获得依赖对象的过程由自身管理变为了由IOC容器主动注入。于是,他给“控制反转”取了一个更合适的名字叫做“依赖注入(Dependency Injection)”。他的这个答案,实际上给出了实现IOC的方法:注入。所谓依赖注入,就是由IOC容器在运行期间,动态地将某种依赖关系注入到对象之中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值