微软发布了支持 Visual Studio 2008 的新版本 Enterprise Library 4.0,同时也发布了他们的依赖注入容器 Unity 应用程序块的 1.1 版本。
模式与实践团队的产品经理 Grigori Melnik宣布发布Enterprise Library 4.0 和 Unity 1.1 更新,详细描述了所有新特性。
MSDN 开发中心的新闻稿解释了这个版本对开发人员的意义:
此次发布的 Enterprise Library 包括了一个应用程序块(参见 Unity 应用程序块)。Unity 是一个轻量级,可扩展的依赖注入容器,支持构造函数,属性和方法调用注入。你可以单独使用 Unity 应用程序块的依赖注入机制而不需要安装 Enterprise Library。不过,此次发布的 Enterprise Library 集成了 Unity,提供了一种新的方式创建 Enterprise Library 对象。
几个现有的应用程序块的功能上也有改进。下面章节讨论在这个版本中的变化。此外本次发布的版本支持 Visual Studio 2008,Windows 管理规范(WMI)2.0 版和微软.NET Framework 3.5。
Enterprise Library 4.0
Enterprise Library 4.0 版本包含以下应用程序块:
- Caching Application Block . 开发人员可以使用这个程序块在应用程序中应用缓存. 支持可插拔的缓存提供者(Provider)。
- Cryptography Application Block . 开发人员可以把这个应用程序块在应用程序中应用散列和对称加密。
- Data Access Application Block . 开发人员可以把这个应用程序块作为应用程序的标准的数据库访问功能。
- Exception Handling Application Block . 开发人员和决策者可以使用这个应用程序块为企业应用程序各层异常处理制定一致的策略。
- Logging Application Block . 开发人员可以使用这个应用程序块为他们的应用程序提供日志记录功能。
- Policy Injection Application Block . 开发人员可以使用这个应用程序块在应用中提供拦截策略,可以用它来简化整个系统的通用功能的实现,例如日志记录,缓存,异常处理以及验证。
- Security Application Block . 开发人员可以用这个应用程序块为他们的应用程序提供授权和安全的缓存功能。
- Unity Application Block . 开发人员可以使用这个应用程序块作为一个轻量级和可扩展的依赖注入容器,支持构造函数,属性和方法调用注入。
- Validation Application Block . 开发人员可以使用个应用程序块为他们的应用层的业务对象创建验证规则,可以在应用程序的各个层里面使用。
Enterprise Library 4.0 有什么新特性?
- 集成 Unity 应用程序块
- 支持 Windows 管理规范(WMI)2.0 和改进性能计数器
- 性能提升(特别是在日志记录应用程序块)
- 可插拔的缓存管理
- 支持 Visual Studio 2008
- Bug 修复
目前已发布的所有应用程序块的快速入门:
- 缓存应用程序块快速入门
- 加密应用程序块快速入门
- 数据访问应用程序块快速入门
- 异常处理应用程序块快速入门
- 安全应用程序块快速入门
- 日志应用程序块快速入门
- 策略注入应用程序块快速入门
- Unity 应用程序块快速入门
- 验证应用程序块快速入门
Enterprise Library 4.0 可以从模式与实践开发者中心下载。
Unity 1.1
Unity 是一个集成 Enterprise Library 的依赖注入容器,但是不依赖于 Enterprise Library:
Unity 是一个轻量级,可扩展的依赖注入容器,支持构造函数,属性和方法调用注入。你可以使用 Unity 和企业类库来生成 Enterprise Library 对象和你自己的自定义业务对象。 但是 Unity 应用程序块和 Enterprise Library 所包含的其他几个应用程序块在几个方面是不一样的:
- 你可以单独使用 Unity 应用程序块的依赖注入机制而不需要安装 Enterprise Library。
- Unity 应用程序块可以通过配置文件来配置容器,但也支持通过代码在运行时动态注册依赖关系。
- Unity 应用程序块不依赖于 Enterprise Library 的核心和 Enterprise Library 的配置系统。它有自己内建的机制来读取配置信息,虽然配置也可以来自 Enterprise Library 的配置文件。
Unity 1.1 有什么新特性?
- 清理了所有过时的 ObjectBuilder 代码。
- 修复 bug:在生命周期管理器中使用泛型类型。
- 修复 bug:RigisterType 覆盖了 RegisterInstance。
- 提升了解析单件对象的性能。
- 公开了一些内部类,更容易编写类型的扩展(那些自定义的如何解析依赖对象)。
- 改进了值解析失败时的出错信息。
本次发布还没有实现的特性?
- 拦截机制还没有实现,这是 Unity 最高优先级的需求。
- 如果需要 AOP 功能,依旧可以使用策略注入应用程序块。
- 没有提供支持 DI 配置的工具。
Unity 1.1 可以从模式与实践开发者中心下载。
David Hayden 提供了一个 Enterprise Library 4.0 数据访问程序块集成 Unity 控制反转(IoC)的播客并对如何使用给出了一个很好的介绍。
查看英文原文: Microsoft Enterprise Libarary 4.0 Released for Visual Studio 2008
评论