对spring 反转控制(Inversion of Control )
来源:互联网 发布:js window事件 编辑:程序博客网 时间:2024/06/04 08:12
Spring 的核心特性之一是IoC,反转控制。这个概念太难理解,读完Spring reference手册关于IoC章节后依然只知道Spring 中IoC的是通过 Dependency Injection实现的。依赖注入很好理解,就是如果A对象需要引用B对象,那么在创建A对象实例时自动创建B对象,并把B对象的引用付给A。 但想来想去这和反转控制有什么联系啊。Spring reference中有一个解释Ioc的比喻:好莱坞规则——Don't call me,I will call you.
我默念了好多遍终于头脑里有点亮光。
可以这么理解IoC中的C-control, 如果A 调用 B的方法:A是调用这个动作的发起者、B为响应者 ,即为A控制B。在好莱坞规则里,把演员Call导演,变为了导演Call演员,其实都是完成同一件事报名演出,只是动作发起人变了。这即为反转控制。
其实在面向对象设计中不乏反转控制的例子,比如Observer观察者模式中。A对象在B对象出现某种变化时执行一个动作,这个动作发起者是A。Observer模式中通过注册、监听、回调等方式,把动作发起者变成了B,变成了由B调用A的方法。
那IoC有什么好处?
thinking...
- 对spring 反转控制(Inversion of Control )
- Spring从IOC(Inversion of Control:控制反转)开始
- 控制反转(Inversion of Control)
- 控制反转(Inversion of Control)介绍
- IoC(Inversion of Control)控制反转
- 什么是控制反转(Inversion of Control)
- 控制反转(Inversion of Control)
- 控制反转 IOC (Inversion of Control)
- 控制反转IoC(Inversion of Control)
- inversion of control(控制反转)
- Inversion of control (控制反转)
- Spring核心技术(1)控制反转(Inversion of Control,IoC)理论
- Spring的IOC(控制反转Inversion of Control)
- Spring的IOC(Inversion of Control)(控制反转)
- Spring核心原理:依赖注入Dependency Injection(控制反转Inversion of Control)
- 经典--控制反转(Inversion of Control)介绍(转)
- 控制反转(Inversion of Control,IoC)简介
- IoC(Inversion of Control)反转控制
- PowerBuilder被忽略的的技术
- php多路复用(多线程)[翻译]
- Linux下安装ACE
- Java1.5泛型指南中文版(Java1.5 Generic Tutorial)
- linux 80端口被占用
- 对spring 反转控制(Inversion of Control )
- 文件加锁
- java 泛型知识 收集
- (基础篇) 第一章开始
- Google相关
- Spring注解入门
- (基础篇) 第二章 Unicode简介
- UCHOME系统common.php文件解析
- (基础篇) 第三章 窗口和消息