Aspect Oriented Programming
Program-Transformation.Org: The Program Transformation Wiki
Description
Functional decomposition is good for flexibility, maintainance and
modularity of programs. However, it is not necessarily good for other
aspects of programming, e.g., memory efficiency, error handling,
etc. To cope with such aspects it is often necessary to write
monolithic programs in which components share
knowledge. Aspect-Oriented Programming is a paradigm
that attempts to cater for functional decomposition and other aspects
of programming. Aspect programs describe how normal programs can be
modified in order to deal with some aspect.
An aspect-oriented program consists of component programs and aspect
programs. An aspect weaver combines these into a final, tangled
program in which components and aspects are expressed.
One of the first implementations of Aspect Oriented Programming is
AspectJ, this is an extension to java.
Tools
References
See Also