论坛首页 Java企业应用论坛

我对IoC/DI的理解

浏览 40884 次
该帖已经被评为精华帖
作者 正文
   发表时间:2012-04-01  
其实说了这么多,IOC/DI给我们带来的改变不止一些编码方式的改变,而是整个编程设计思想和模式的改变,它从根本上颠覆了我们的设计,思维,考虑问题的方式,当你要理解IOC时,你要从根本上理解IOC背后的哲学内涵,这样,你才能彻底理解IOC的意义!!!!
0 请登录后投票
   发表时间:2012-04-01  
kjj 写道
其实说了这么多,IOC/DI给我们带来的改变不止一些编码方式的改变,而是整个编程设计思想和模式的改变,它从根本上颠覆了我们的设计,思维,考虑问题的方式,当你要理解IOC时,你要从根本上理解IOC背后的哲学内涵,这样,你才能彻底理解IOC的意义!!!!


哥们这是我的理解
使用IoC/DI容器开发需要改变的思路
1、应用程序不主动创建对象,但要描述创建它们的方式。
2、在应用程序代码中不直接进行服务的装配,但要配置文件中描述哪一个组件需要哪一项服务。容器负责将这些装配在一起。

能否谈谈你的理解
1 请登录后投票
   发表时间:2012-04-01  
我的理解:ioc:个人认为依赖介入更恰当,就像两个不认识的人,通过一个都认识的朋友认识一样。
DI:就是介绍他们两认识,将关系建立起来。
不知道理解对不对,欢迎拍砖
0 请登录后投票
   发表时间:2012-04-01  
呵呵 ..过来支持楼主的.  整理的很好. 理论上的就这样理解就好了.  过细的就要研究spring3的源码了.. 里面很多功能 其实 有经验的都能写出来.. 但是里面的设计模式却是可以很好的学习的.
0 请登录后投票
   发表时间:2012-04-01  
lancijk 写道
呵呵 ..过来支持楼主的.  整理的很好. 理论上的就这样理解就好了.  过细的就要研究spring3的源码了.. 里面很多功能 其实 有经验的都能写出来.. 但是里面的设计模式却是可以很好的学习的.

谢谢支持,多批评
0 请登录后投票
   发表时间:2012-04-01  
cobb.chan 写道
我的理解:ioc:个人认为依赖介入更恰当,就像两个不认识的人,通过一个都认识的朋友认识一样。
DI:就是介绍他们两认识,将关系建立起来。
不知道理解对不对,欢迎拍砖


IoC 和 IoC容器是不一样的 一定要区别
0 请登录后投票
   发表时间:2012-04-01   最后修改:2012-04-01
jinnianshilongnian 写道
cobb.chan 写道
我的理解:ioc:个人认为依赖介入更恰当,就像两个不认识的人,通过一个都认识的朋友认识一样。
DI:就是介绍他们两认识,将关系建立起来。
不知道理解对不对,欢迎拍砖


IoC 和 IoC容器是不一样的 一定要区别



IOC容器:就是讲A,B两个朋友拉拢在一起,大家坐下来建立关系,共同致富(我们可以理解为SPRING配置文件)
IOC:  即建立关系(建立类之间的关系)

呵呵,个人理解。
0 请登录后投票
   发表时间:2012-04-01  
这部分东西让人很兴奋啊,思想和设计方式完全不同了。
我可不可以说……
自从会了IOC,腰不酸了,腿不痛了,一口气上五楼不带喘╮(╯_╰)╭

之前整理过这部分内容,顺序是:
反射——工厂方法——动态代理——AOP——IOC——DI
0 请登录后投票
   发表时间:2012-04-01  
BlackGray 写道
这部分东西让人很兴奋啊,思想和设计方式完全不同了。
我可不可以说……
自从会了IOC,腰不酸了,腿不痛了,一口气上五楼不带喘╮(╯_╰)╭

之前整理过这部分内容,顺序是:
反射——工厂方法——动态代理——AOP——IOC——DI



AOP 和 IoC/DI没关系

如果非说有关系  IoC/DI基础  AOP是增强

你可以下载 http://www.iteye.com/topic/1121935  里边讲了AOP
0 请登录后投票
   发表时间:2012-04-01  
整篇文章我看了两遍,不得不大赞精彩!有一行,我不理解,文章也没有着重讲
引用
容器:提供组件运行环境,管理组件声明周期(不管组件如何创建的以及组件之间关系如何装配的);


能不能讲讲“提供组件运行环境,管理组件声明周期”具体表现为什么,做了什么工作?因为我看完文章之后,
感觉IOC容器好像就仅仅是这样:
1 建立一个xml,描述类的创建和类之间的关系。
2 IOC容器的main函数,读取xml,通过反射技术建立对象。应用程序在IOC容器的帮助下,无需关心类的创建,就可以轻松地获取到类实例。

于是我想,“提供组件运行环境,管理组件声明周期”究竟有什么用?为什么要有这两个功能?
  • 大小: 37.4 KB
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics