快速业务通道

AOP@Work: 使用AspectJ 5检验库方面 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
形式,因 为用户不需要了解关于 AspectJ 的一切内容,只需完成部署库所必需的最低限 度 XML 编辑工作。

有了这些部署 AspectJ 库的新方法之后,用户就只需要 知道部署其方面所必需的内容。装入时织入器最小化了开发和构建流程的影响, 方面库可最小化所需的专门技术 —— 但前提是库开发人员能够应对 挑战,编写出健壮的方面,并使其与部署人员提供的最小化规范协同工作。

AOP@Work: 使用AspectJ 5检验库方面(2)

时间:2011-09-07 IBM Wes Isberg

让我们开始游戏吧!

您做好迎接库方面挑战的准备了吗?最好穿 好您的盔甲,因为您的公主 Dee 正在危急之中,她与其他许多漂亮的女士一起 工 作,她们正在等待您的帮助。像 Erin 和 Faye 这样的新手主要是想获得一种解 决方案。Gail 和 Holly 这样的中级开发人员除了想获得解决方案外,还想了解 细节。而 Irene、Jodi、Kelli、Liz 和 Mary 这些专家都希望构建自己的解决 方 案。所有这些人现在都遇到了难题。快去帮助这些女士吧!

Arnold、 Buddy 和 Connor 也与 Dee 一起工作,但他们的目标是能够帮助其他人解决问 题 ,而不仅仅是解决自己所面对的问题。在看到您对 RethrowVMError 的高效处理 后,他们也渴望成为英雄。他们能够很快地做出总结,并为自己负责的领域设定 防御措施。Arnold 对切入点带来的变化大吃一惊,Buddy 几乎不能相信注释和 mixin 接口的强大能力(但更希望获得更好的代码),Connor 打算合并库方面 。 女士们期待您为她们找到解决方案,同时这几位小伙子也迫切希望通过您的教授 而精通方面。小伙子们,不要太心急!

Zed 是主管,拥有最终决定权。Zed 憎恶更改开发流程或在某些需要大量经 验 的东西上投资,但如果时机合适,他也不会怯于应允。为了解开发人员能以多快 的速度学会编写库方面,Zed 派那几位小伙子追随在您身边,偶尔帮您做一点事 情。如果解决方案能够令女士们满意,而且小伙子们学会了编写方面,基本上 Zed 会非常乐意接受方面库。对您的判断将取决于您是否能够同时完成解决方案 和培训这两项任务。

您的口袋中有大概 30 个方面 —— 如果愿意,您可以 立即拿到它们!在本 文结尾处的 “库方面一览” 中可以看到其摘要。

Erin 利用错误声明审查代码

Erin 负责代码审查,所以 Dee 将无法处理 VMError 的有关情况汇报给了 Erin。由于存在因未曾使用 VMError 这个词而无法确定 VMError 的可能性,除 了方面以外,Erin 找不到什么好办法来完成这个任务。经过 Zed 的首肯,Erin 私下与您探讨了相关情况,告诉了您她想检查的内容,但不希望仅通过自己的眼 睛费力地检查代码。评估了她的需求和技能后(与处于她这个职位的许多人一样 ,她实际上并不能自行编写代码),您向她说明了编写基本 “within” 切入点 以指定受影响类型的方法,还给了她一组方面,共 4 个。在某些规则被违背时 , 表 1 中的每个方面都会在织入时提示存在错误。

表 1. 用于错误检查的方面

InstanceFieldNaming 禁止实例字段名不以 “f” 开头
NoCallsIntoTestFromOutside 禁止从产品包到测试包的引用
UtilityClassEnforced 禁止构造实用工具类
NoSystemOut 禁止使用 System.err 或 System.out
GetterSetter 禁止在除初始化或 getter 方法以外进行字段读取操作,禁止在初始 化或 setter 方法以外进行字段写操作

为部署这些方面,Erin 编写了一些具体方面,均与清单 1 所示

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