代码改变世界

随笔分类 -  IOC

我在项目中运用 IOC(依赖注入)--实战篇

2014-01-13 08:36 by IT农民!, 3911 阅读, 收藏, 编辑
摘要: 上一篇《我在项目中运用 IOC(依赖注入)--入门篇》只是简单的使用 IOC。实际项目使用 IOC 的情景复杂多了,比如说,构造函数有多个参数,有多个类继承同一个接口... Unity都有解决方法。首先回顾一下入门篇的项目需求:项目中数据统计功能,它下面有三种不同的统计类型,需要与数据库交互,然后展示到页面,在这篇中我们接着这个需求继续扩充。【没有接口】新增Model 层,LoginUser 当前登录人。无接口的怎样用IOC 创建对象。代码如下Model.LoginUser loginUser = container.Resolve();【多个子类】DAL 层 新增ShowResult2 方法 阅读全文

我在项目中运用 IOC(依赖注入)--入门篇

2014-01-09 15:34 by IT农民!, 7626 阅读, 收藏, 编辑
摘要: 之前就听同事说过依赖注入(dependency injection)、控制反转(Inversion of Control)。起初听的是一头雾水,试着在项目中运用了几次,总算明白了一些,抛砖引玉,与大家分享一下拙见。其实依赖注入和控制反转指的都是同一个事情。什么是依赖注入了???【个人理解】以最熟悉的三层架构的项目来说,BLL层依赖DAL层,UI层依赖于BLL层,层层之间紧密联系。代码里到处都是new 对象。认识IOC后,发现IOC最大的好处就是解耦了对这种层级之间的依赖关系进。程序本身不在负责对象的创建和维护,而交给外部容器(IOC容器)来负责。外部容器在运行时动态地将依赖的对象注入到组件之中 阅读全文