my spring 学习之路(一)

1.1 为什么要有Ioc?

     首先传统的应用程序中,类与类之间的耦合性太强,

     举个例子应用程序需要使用user类,则需要new User。

     但是也需要会用到userdetail,那么就需要在user类中new userdetail类,然后使用userdetail的资源。由应用程序主动创建依赖对象

   

  

   

    1>  这样的设计首先不利于单元测试。因为做user单元测试的就需要new userdetail类。

    2> 这样不利于功能复用? 待深入 why?


1.2 什么是Ioc?

     Ioc不是一种程序or技术, 它是一种思想,Ioc --- Inversion of Control,翻译为控制反转。

    是指将你要依赖的类,更准确的说是对象, 交给Ioc容器处理。

    应用程序不需要主动创建类,创建类以及查找, 注入依赖的事情全部交由Ioc容器去做。应用程序被动的接受Ioc容器处理好的注入对象。

    控制什么?  --主要控制外部资源获取(对象或文件等)


1.3 什么是DI?

     DI - Dependency Injection, 翻译为依赖注入,由Ioc容器动态的注入所要依赖的对象到组件中去。

     Ioc - DI 可以帮助应用程序具体到类更好,更简洁的完成自身的业务逻辑。而不需要care外部资源怎么获取,来自何处,由谁实现等。

  •     谁控制谁: Ioc容器控制依赖对象
  •     控制了什么:外部资源
  •     谁依赖谁: 应用程序依赖Ioc容器
  •     为什么需要依赖:使应用程序更简洁的完成自身业务逻辑,而不需要care 外部资源的how, where, who获取。
  •     谁注入谁:Ioc容器注入应用程序所要依赖的对象。
  •     注入了什么:注入应用程序所依赖的外部资源。


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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值