Unity 概述

EntLib(Enterprise Library的简称)有一个叫做Container的东西,  Unity中的叫做IUnityContainer, 主要做对象的Mapping 任务.
IOC

  IOC直译过来是”控制反转”,这句话应该理解为什么地方的控制被反转了?控制的是什么?

  这里的控制指的应该是对象的实例化位置由程序内部的硬编码移动到了程序外部, 实例化的位置做了反向控制.

  OjbectA a = new Objecta();

  应用了IOC之后就变成了:

  IObjectA a = Container.Resolve(“OjbectA”) as IObjectA;

  可见这里元被直接new的对象,现在交给了Container来做, 让后根据Container中的Mapping 来决定用哪个实现来初始化.
DI

  “依赖注入”的三种注入方法分别是Constructor Injection,Method Injection, Property Injection. 他是针对面向对象”依赖倒置(DIP)”原则的实现, 其意思是通类内部对外部组件的依赖可以有这三种方式来解除. 此模式也就是要要求当我们的类内部需要对外部组件引用的时候要使用对方的接口或者抽线方法,而不是具体实现类.

 
Interception

  Interception是EntLib Unity组件对AOP功能的一种实现

PRISM引用动态库

 

 

 

 

posted @ 2012-12-20 17:43  巴别塔  阅读(412)  评论(0编辑  收藏  举报