aspect-oriented software development

||  Home  ||  Lectures  ||  Seminars  ||  Coaching  ||  Contact  ||  Links  ||

After a decade of object-oriented programming, many software projects have encountered the limitations of object-orientation as the sole methodology.

The problem:

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™.

The solution:

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.

The way:

Learn more about the possibilities of aspect-oriented development in presentations, trainings or project support.

"Through the Looking Glass", by Grady Booch (from the July 2001 issue of Software Development)

The first time I really grasped the wonderful power of object-oriented abstractions, I thought I'd seen the ultimate model on which all kinds of complex systems could be grown. . . However, I was wrong: There's something deeper, something that's truly beyond objects. Admittedly, this isn't a concept that's easy to explain, because I'm still so steeped in an object-oriented view of the world. However, just as a sailor can sense a changing sea, I note subtle signs that point to a marked transformation, a disruptive technology, on the horizon.

Copyright © 2003-2004, Bernd R. Fix. All Rights Reserved.