Spring学习笔记(一)依赖注入
依赖注入——是Spring最灵魂的设计思想,有人也叫做控制反转。
1、不管是依赖注入(DI:Dependency Injection)还是控制反转(IoC:Inversion of Control)它的思想是:控制权由应用代码中转到了外部
容器,即组件之间的依赖关系由容器在运行期决定,形象的来说,即由容器动态的将某种依赖关系注入到组件之中。
2、依赖注入的目标并非为软件系统带来更多的功能,而是为了提升组件重用的概率,带来灵活性。
3、举个例子来说明这个问题。
我曾看到夏昕的《Spring 开发指南》,上面为说明这个思想,举了电脑、USB硬盘和U盘的例子,感觉还是不太贴切,今天想了个自认为比较好
理解的例子:
有两种变形金刚的玩具,
一种是固定的,我把它比作原来那种控制权由应用代码写死的程序
一种可以拆开重新装配的,我把它比作用了依赖注入设计思想的程序
变形金刚的各个部件就象程序的各个组件。
变形金刚的厂家,相对它来说是内部的。就象程序的代码
变形金刚的玩家,相对它来说是外部的。就象程序的容器
大家试想一下,固定变形金刚的控制权是不是厂家决定的,外部无能为力
而可拆卸的变形金刚的控制权转移到了外部的玩家,玩家在玩之前可以重新决定各个组件的连接关系
而这种组件的连接图是不是也很像依赖注入思想里的配置文件。
大家再从这个例子分析一下依赖注入的目标。
posted on 2006-03-23 13:46
阿成 阅读(301)
评论(0) 编辑 收藏 所属分类:
Spring