快速业务通道

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

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
一些具体特性的列表:

AspectJ 和 AspectWerkz —— AspectJ 5 会提供对切入点泛型的支持特性。 @AspectJ 语法会支持 AspectWerkz 注释风格。

JBoss AOP —— 参数的静态类型化、性能提高、库和更多的 IDE 支持特性。

Spring AOP —— 性能提高、与 AspectJ 切入点的互操作性,以及把某些 Spring AOP 服务打包成 AspectJ 方面。

AOP@Work: AOP工具比较,第2部分-开发环境(8)

时间:2011-09-04 IBM Mik Kersten

底线

如果存在这里给出的优势和不足,如何判断为特定项目选择哪个工具?在采用 某项技术时可能遇到的主要问题是什么?这里是每种工具的强项与弱点的一个概 括,可以帮助您制定最终决策。下面将开始介绍手工编写横切问题与使用 AOP 工 具进行处理的优劣对比。

所有工具 VS 手工编码的横切

- 目前还不支持高级 IDE 特性(例如重构)。

+ 一些方面天生就处于复杂系统中,如果没有 AOP 工具,实现会变得非常脆 弱,难以发展。

+ 横切变得很明确,易于推理和修改。

AspectJ

- 语言扩展要求使用已扩展的编译器和相关工具。

- 缺少库。

+ 简洁的方面声明和切入点的静态检查。

+ 成熟的 IDE 集成。

+ 丰富的文档。

AspectWerkz

- 不太简洁的方面和切入点声明。

- 缺少切入点的静态检查。

- 缺少库。

+ 与 AspectJ 类似的机制,没有语言扩展。

+ 支持方面的热部署。

JBoss AOP

- 缺少切入点的静态检查。

- 缺少到其他应用服务器的移植性。

+ 有丰富的企业方面库集合可用,与丰富的 JBoss 和 JEMS 库集成在一起。

+ IDE 支持降低了采用难度,减少了手工编写 XML 代码的需要。

+ 支持方面的动态部署。

Spring AOP

- 只能通知那些通过框架的代理机制实例化的对象。

- 不适合细致的方面。

- 缺少处理方面的 IDE 支持。

+ 简单的连接点模型很适于粗粒度的方面,更容易学习。

+ Spring 框架集成,易于现有 Spring 用户采用。

+ 跨应用服务器的方面库可移植性。

结束语

AOP 工具目前的成就让人对它的发展前景感到兴奋,之所以特别有兴趣在这里 研究这 4 种工具,是因为它们目前的成熟度,以及对它们未来开发的展望。这里 选择进行比较的 4 种工具都足够成熟,均适用于商业开发,并且会在将来的某个 时候获得成功。

仔细分析这篇由两部分构成 AOP 工具比较系列文章中讨论的该工具的利弊, 这些有助于判断哪种工具最适合您的项目。文中指出了工具处理方面声明、编织 以及构建集成的主要区别,概述了关键的性能问题;还强调了 IDE 集成的好处。 本文概述了 Java 语言扩展的优势与不足,这个主题对 Java 开发人员有深远的 意义,文章还指出了 AOP 工具的一些未来发展方向。

在阅读本文时,读者可能会很惊讶地发现这些工具的相同点要多于它们的不同 点。这意味着不管选择哪项技术,学习曲线可以从一个 AOP 工具转移到另一个。 每种工具的新发展会继续相互渗透。AOP 工具目前正在迅速发展,可以满足不断 增长的用户社区的需求;而且它还在不断发布新版本。不管您最后采用什么样的 AOP 工具,都鼓励您加入它的用户讨论列表。您的反馈会帮助这项重要的技术指 明未来的发展方向。

记着下个月继续关注 AOP@Work 系列的下一期文章:Ramnivas Laddad 的 “ 元数据和 AOP:天生绝配”。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号