InfoQ

InfoQ

新闻

我的书签

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

该内容已经被标记书签!

标记书签错误,请重试!

支持Silverlight的AOP

作者 Jonathan Allen 译者 张逸 发布于 2008年8月5日

领域
架构 & 设计,
语言 & 开发
主题
.NET精简框架 ,
AOP ,
.NET框架 ,
Mono ,
.NET ,
方法论 ,
编程

AOP或者说面向方面编程支持开发人员将代码段“织入”到对象和方法中,而不需要显式地将代码放入到类的源代码中。附加的代码通常被称为“通知(advice)”,它通常被存储在配置文件中,除此之外,也可以用其他方法存储。或许最广为人知的AOP系统就是AspectJ,它是对于Java的扩展。

近年来,AOP颇具争议。很多人一边诅咒着那些需要重复实现的任务,例如安全与日志;一方面又由于注入代码在源代码中无法清晰可见,而回避AOP。但是,即使你对其深恶痛绝,你迟早都会碰到那些使用AOP的代码。

对于当前正在使用或有意于尝试使用AOP的.NET开发人员而言,PostSharp会是一个选择。它使用了后处理的方式将advice添加到类中。这种方式通过修改已经编译的EXE或DLL注入必要的代码段。在PostSharp中,advice通常以Attribute对其标识。

最近,PostSharp宣布1.5版本支持Silverlight 2。CTP技术预览版本还支持.NET精简框架(Compact Framework,CF)和Novell的Mono。Chris Koenig演示了PostSharp的例子

查看英文原文:Aspect Oriented Programming for Silverlight

译者 张逸 是一个怀揣梦想的架构师,沉迷于设计之美,著译作包括《软件设计精要与模式》、《WCF服务编程》等。