AspectJ在v1.1.1版本发布之后基本上停止了新功能的开发,转向1.2版本的目标和计划。由于计划2004年6月发布的Eclipse 3把J2SE 1.5(Tiger)支持作为核心feature,所以新的AspectJ当然也要支持J2SE 1.5。另外,从这个版本的开发计划中可以看出,AspectJ的下一步主要是向主流产品靠拢,以提高实用性和生产力为主要目标,例如它的功能列表主要要点包括(按Eclipse社区的习惯划分为strong candidates和potential candidates):
Strong Candidates for 1.2
Highlights include(see full list of planned features here):
- weaving class loader support
- improve performance and memory usage for compile/weave and runtime
- provide documentation and samples for using AspectJ with popular J2EE servers
- allow the specification of input directories (not just jars) for binary weaving
- enhancements to IDE support for incremental structure model
Potential Candidates for 1.2
Highlights include(see full list of potential features here):
- pertype aspect instantiation model
- class attributes in type patterns
- support for context information in declare error/warning messages
- user specifiable exception in declare soft
- serial version uid support
毫无疑问,令人期待的版本,毕竟到目前为止,AOP要在real world的应用系统中使用还是有很多问题的,但是一旦能够很好的支持诸如binary weaving的特性,又能和主流中间件、IDE良好集成,那么离真正解决cross-cutting问题的目标就很近了。