Aspect-Oriented Programming (AOP)

Motiviations (http://aopalliance.sourceforge.net/motivations.html)

Aspect-Oriented Programming (AOP) is a programming technique that will be able to enhance several existing middleware environments (such as J2EE), or development environements (e.g. JBuilder, Eclipse).

Several projects now provide AOP-related techniques such as generic proxies, interceptors, or bytecode translators.

  • ASM: a lightweight bytecode translator.
  • AspectJ: an AO source-level weaver. New Language.
  • AspectWerkz: an AO framework (bytecode-level dynamic weaver+configuration).
  • BCEL: a bytecode translator.
  • CGLIB: high-level API for class artifact manipulation and method interception.
  • JAC: an AO middleware (bytecode-level dynamic weaver+configuration+aspects). Framework.
  • Javassist: a bytecode translator with a high-level API.
  • JBoss-AOP: interception and metadata-based AO framework.
  • JMangler: a bytecode translator with a composition framework for translations.
  • Nanning: an AO weaver (framework).
  • Prose: an AO bytecode-level dynamic weaver (framework).
  • ... and many others (email me to add a new one)
posted @ 2005-02-06 11:00  Peter Wang  阅读(857)  评论(0编辑  收藏  举报