Protokollnotiz des 46.Treffen des Arbeitskreises am 26.1.2004
Herr Thomas Baustert (Resco
GmbH):
Titel: "Aspektorientierte Entwicklung" (handouts
ca. 1,2 MB pdf)
Heutige Softwaresysteme werden in der Regel mit objektorientierter Programmierung
realisiert, weil hiermit komplexe Systeme besser bewältigt
werden können, als mit irgendeinem anderen bisher bekannten Paradigma.
Die objektorientierte Programmierung stößt dabei an Grenzen, wenn die
Verantwortlichkeiten über viele Objekte verteilt werden müssen. Beispiele
hierfür sind Logging, Transaktionsbehandlung, Sicherheitskonzepte, Caching,
usw. Durch die Verteilung wird deren Handhabung deutlich erschwert.
Hier kommt die aspektorientierte Programmierung (AOP) ins Spiel. Sie bietet die
Möglichkeit, die an sich verteilten Verantwortlichkeiten zentral in einem
Aspekt zu bündeln und damit besser handhabbar zu machen.
AOP ist dabei kein neues Paradigma, das erst vollständig erlernt werden muss,
um es einsetzen zu können. Vielmehr kann aspektorientierte
Programmierung schon morgen im pragmatischen Einsatz helfen, die Entwicklung zu
vereinfachen.
Aspektorientierte Programmierung kann ein wichtiges Werkzeug für die Entwicklung
komplexer Softwaresysteme sein. Der Vortrag soll die Grundlagen und Möglichkeiten
der aspektorientierten Programmierung aufzeigen und das Interesse wecken. Beispiele
werden anhand der Java Erweiterung AspectJ gezeigt.