首页 新闻 会员 周边 捐助

用了IOC半年了,好处不明显,总结了2点,希望点拨一下

0
悬赏园豆:5 [已解决问题] 解决于 2014-11-14 10:52

1.做测试更省力了

2.比如Ninject,实现无视初始化先后顺序,无视模块初始化中互相调用造成的死循环。

 

那么如果不用IOC,原始的形式要么从工厂创建,要么用单例。

是不是IOC还有更多的好处我没发现?

HONT的主页 HONT | 初学一级 | 园豆:4
提问于:2014-11-14 00:08
< >
分享
最佳答案
0

个人理解,IOC主要就是为了Bigger than bigger。实际上我也暂时没有特别明确遇到这样需求,不过这样说显得程序员很LOW,所以大家都不说。

你可以想象一下GOOGLE的自组装手机项目吧,IOC基本也是奔那个去的,不过理解要照进现实,还需要适合的环境。

IOC主要的好处就是他的名字:Inversion of Control, 是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度, 其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency Lookup)。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体,将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。

收获园豆:5
爱编程的大叔 | 高人七级 |园豆:30844 | 2014-11-14 10:45

"不过这样说显得程序员很LOW,所以大家都不说。"

一语道出真言啊。。。

HONT | 园豆:4 (初学一级) | 2014-11-14 10:51
其他回答(2)
0

个人理解:主要是切换业务方便(实际上我还基本没遇到这样的需求)。通过配置文件变化,就能切换一层,工厂的话一般需要改代码。

幻天芒 | 园豆:37205 (高人七级) | 2014-11-14 08:49
0

说白了就是为了提高门坎,提高自己的薪水.实际上的需求我也没遇到过,哈哈.不过倒是一直在用

Miky.Chou | 园豆:76 (初学一级) | 2014-11-18 21:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册