After a decade of object-oriented programming, many software projects
have encountered the limitations of object-orientation as the sole
It is becoming obvious that it is not possible to map all requirements
and concerns for a given problem domain onto a single class hierarchy.
There are always concerns (aspects) that can only be described as a
cut through a primary decomposition (class hierarchy). These
crosscutting concerns cannot be directly implemented with programming
languages such as Java™.
As opposed to objects that encapsulate their properties entirely, the
properties and behavior of aspects are scattered across many classes
in classical Java™ code. Aspect-oriented programming offers the
possibility of encapsulating these crosscutting concerns parallel to a
class hierarchy and to modularize them as aspects.
Learn more about the possibilities of aspect-oriented development in
presentations, trainings or