快速业务通道

AOP@Work: AOP工具比较,第2部分-开发环境 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
ava 切入点当作字符串,所以它们也可以借助重构工具,重新命名内 嵌在 XML 文件和注释中的完全限定 Java 引用。

支持在 IDE 中使用 UML 视图的工具越来越多,尽管对这类视图的应用目前仍 然存在争议。目前,还没有与 AspectJ 或其他 AOP 工具兼容的 UML 查看器。如 果对 AspectJ 程序使用 UML 查看器,查看器可能会崩溃,因为它要求的是普通 Java 代码。相比之下,普通的 Java 技术会把方面作为普通的 Java 类显示。这 样做的好处是有限的,因为它无法显示在通知与受影响的连接点之间,或者通知 与通过类型间声明添加的附加成员之间的所有有意义的关系。

文档和库

除了 IDE 支持,工具的文档和库支持也是评估的重要因素。每种工具都提供 了在线文档,但是 Spring 框架为其 AOP 功能提供的是有点分散的、以实现为中 心的文档。无需 EJB 的 J2EE 和其他关于 Spring 框架的书籍会很快 填补这个空白。AspectJ 是 AOP 工具的最好证明,目前有六本这方面的书正在印 刷。注意,可使用文档的状态仅仅反映了每个项目已经进行的时间长短。

Spring AOP 提供了优秀的库支持。与 Spring 框架的集成意味着它利用了依 赖注入的(dependency-injecting)方面,提供了复杂成熟的事务拦截器库,而 且支持一些有趣的第三方方面(例如 Acegi 安全性框架)。Spring 的 AOP 库拥 有在应用服务器之间移植的优点,而且精心挑选的框架组件方式使它很容易接纳 模块中其他利用 AOP 支持的部分。JBoss AOP 提供了与 JBoss 框架和 JEMS 堆 栈的其他部分的良好集成,而且拥有目前能够得到的最丰富的方面库。这些库包 括对 JBoss Cache、J2EE 按需使用、JBoss remoting、异步方面和 JMX 方面的 支持。目前,虽然已经用这些工具创建了一些第三方库,但 AspectJ 和 AspectWerkz 不包括任何库。未来的发行版承诺将提供库支持。

下一步是什么

评估 AOP 工具时要考虑的最后一个因素就是它们的下一步是什么。所有这些 工具都在快速走向成熟,目前的实现工作正在解决这里讨论的许多问题。更有趣 的是某些技术的优势正在渗透到其他技术中。例如,横切视图曾经是 AspectJ 所 特有的,但现在 JBoss AOP 也提供了横切视图,而且很快其他工具也会提供。合 并后的 @AspectJ 会把 AspectJ 工具支持的许多优点带到 AspectWerkz 的注释 风格中。@AspectJ 还提供了语言扩展风格与注释风格之间的互操作性,这样,语 言的语法也将成为开发人员的一个选择。

沿着这条路,对 AOP 重构的研究将会提供所有技术都能使用的结果。用于图 形选择和切入点操作的 UI 将从一些常见的直观推断中受益,这些直观推断能够 将选择和搜索结果转换成切入点。UML 视图也会开始显示 AOP 声明和联合。全面 支持这些新特性是有可能的,这要感谢一些领先的 AOP 工具在语义上的汇集。

长远来看,性能应该是一个不是问题的问题。就像开发人员不该担心虚拟方法 分派的开销一样,他们也不用担心通知的调用开销。目前在很大程度上这是事实 ,而且随着编织器的改进,以及与 JIT 和 VM 的集成越来越紧密,情况还会变得 更好。

还有另外两个趋势正在出现,但是还不确定。首先,AOP 的连接点模型和切入 点机制的适用性超越了编程语言,对于能够从描述运行时事件的简洁语言中受益 的其他工具来说,AOP 的连接点模型和切入点机制也很适用。随着越来越多的人 采用 AOP 工具,切入点的应用在调试器、profiler 这类工具中的应用可能越来 越普遍。例如,可以在特定的控制流程中设置断点。另一个正在出现的趋势与模 型驱动的开发(model-driven development MDD)有关。由于横切的问题在系统 中是如此基本的一个问题,所以 MDD 工具会从模型化的横切结构以及生成的方面 中获益。

以下是期望从这些工具即将发布版本中得到的

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号