支持 Silverlight 的 AOP

  • Jonathan Allen
  • 张逸

2008 年 8 月 5 日

话题:.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
.NET语言 & 开发架构