AOP

from The Free On-line Dictionary of Computing (8 July 2008)
aspect-oriented programming
AOP

   <programming> (AOP) A style of programming that attempts to
   abstract out features common to many parts of the code beyond
   simple functional modules and thereby improve the {quality} of
   software.

   Mechanisms for defining and composing {abstractions} are
   essential elements of programming languages.  The design style
   supported by the abstraction mechanisms of most current
   languages is one of breaking a system down into parameterised
   components that can be called upon to perform a function.

   But many systems have properties that don't necessarily align
   with the system's functional components, such as failure
   handling, {persistence}, communication, replication,
   coordination, {memory management}, or {real-time} constraints,
   and tend to cut across groups of functional components.

   While they can be thought about and analysed relatively
   separately from the basic functionality, programming them
   using current {component-oriented languages} tends to result
   in these aspects being spread throughout the code.  The
   {source code} becomes a tangled mess of instructions for
   different purposes.

   This "tangling" phenomenon is at the heart of much needless
   complexity in existing software systems.  A number of
   researchers have begun working on approaches to this problem
   that allow programmers to express each of a system's aspects
   of concern in a separate and natural form, and then
   automatically combine those separate descriptions into a final
   executable form.  These approaches have been called
   aspect-oriented programming.

   Xerox AOP homepage
   (http://parc.xerox.com/csl/projects/aop/).

   AspectJ (http://AspectJ.org/).

   ECOOPP'99 AOP workshop
   (http://wwwtrese.cs.utwente.nl/aop-ecoop99/).

   (1999-11-21)
    
from V.E.R.A. -- Virtual Entity of Relevant Acronyms (June 2006)
AOP
       Aspect Orientated Programming
       
    

[email protected]