InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

微软正式发布支持Visual Studio 2008的Enterprise Library 4.0

作者 Robert Bazinet 发布于 2008年6月1日

领域
语言 & 开发,
企业架构
主题
Enterprise Application Blocks ,
.NET
标签
微软 ,
依赖注入

微软发布了支持Visual Studio 2008的新版本Enterprise Library 4.0,同时也发布了他们的依赖注入容器Unity应用程序块的1.1版本。

模式与实践团队的产品经理Grigori Melnik宣布发布Enterprise Library 4.0Unity 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修复

目前已发布的所有应用程序块的快速入门:

 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

深度内容

大规模视频网站的计费与流量管理

本次分享将会就大规模视频网站的计费与流量管理这个话题,从操作层面细细进行讲解和分析,为系统工程师们揭示平日里我们没有关心的另一些内容。同时也希望本次分享能揭示行业中的一些“潜规则”,让互联网行业的流量与带宽管理更为开放与简洁。
本次演讲视频录制于QCon杭州2011

专访Jeffrey Richter:Windows 8是微软的重中之重

Jeffrey Richter以其多本Windows核心技术的经典著作而闻名,同时,他深入掌握微软的.NET等一系列核心技术,2012年1月,Jeffrey Richter在北京接受了InfoQ中文站的专访,谈到Windows 8和WinRT编程,并就异步编程、Windows编程中的可扩展性、性能和安全性方面给出自己的建议。

应用云平台的可用性——从新浪SAE看云平台设计

云计算平台的可用性,相比传统互联网服务而言,更加复杂和困难,也更具有挑战性。本文借助新浪SAE云平台为读者讲述了云平台可用性的定义、如何打造高可用的平台,以及对云计算的用户提出了建议。

JVM定制改进 @ 淘宝

淘宝高度重视Java平台的健康发展,组建了一个团队专注于Java平台的底层部分的性能、功能与稳定性改进;工作主要基于OpenJDK中的HotSpot VM开展,其中一些通用的功能随后也会逐渐反馈给OpenJDK社区。希望能与使用Java平台开发应用的大家交流经验。
本次演讲视频录制于QCon杭州2011

"伤得起"的云计算应用——对云端应用之架构的思考

2011年4月21日至22日是值得云计算从业者纪念的日子。Amazon的IaaS服务出现故障,导致许多商业网站的服务中断,影响非常严重。作为云计算用户,我们需要思考的是,如何保证即便在云服务不可用的情况,我们的应用架构仍然能够屹立不倒?本文正是站在云计算用户的角度试图探讨这一问题。

让交付的速度跟上思考的速度

12人的技术团队,4组刀片服务器,每月20亿的访问量,每日1次准时部署,99.9%的可用性。这可能吗?当然。想知道如何做的吗?百姓网将与您分享他们在DevOps实践过程中的经验和技巧。
本次演讲视频录制于QCon杭州2011

架构之路——穿行在产品和业务之间

篱笆作为一家起源于社区的电子商务公司,反映到技术层面就是同时要面对产品和业务,以及经营战略的变化调整。如何在产品和业务的夹缝之间完成技术架构的抽象与平衡,寻找更有效的价值定位,这当中有些经验教训和个人感悟愿与众人分享。
本次演讲视频录制于QCon杭州2011

特性注入:成功三部曲

本文将对特性注入以及相关方法做一个扫盲性的介绍。我们会解释这个框架的关键要素,并附上实例来证实它们。为了让文章保持相对较短,我们不会深入到某个工具或方法中,而是会给出一些参考资料,以便大家做进一步的研究。