Sunday, 12. July 2015
SW-Archäologie mit AspectJ (4)
3. Unterstützung durch AOP

4. Ausblick

Don't patch bad code - rewrite it.
The Elements of Programming Style
Der Aufwand, sich in unbekanntem Code einzuarbeiten, wird häufig unterschätzt. Langfristig ist es meist wirtschaftlicher, vorhandenen Code komplett neu zu entwickeln, wenn die Dokumentation veraltet ist, der Code an vielen Stellen ausgewuchert ist und auch die Testfälle nicht vorhanden oder von zweifelhafter Qualität sind.

Oftmals hat man aber keine andere Wahl, als auf den bestehenden Code aufzusetzen, weil er die einzig gültige Quelle der Dokumentation darstellt. Und hier bietet die Aspektorientierung eine Vielzahl von Möglichkeiten, um
  • zusätzliche Log-Möglichkeiten einzubauen,
  • Sequenz-Diagramme zu generieren,
  • Schnittstellen zu überwachen,
  • Objekt-Recorder zu implementieren und
  • implantieren,
  • die aufgenommenen Objekte wieder einzuspielen,
  • u.v.m.
Daraus lassen sich weitere Testfälle schreiben und neue Erkenntnisse gewinnen, um Refactoring-Maßnahmen einzuleiten oder sich für eine Neuentwicklung zu entschließen. Allerdings entbindet auch AOP nicht von der Aufgabe, bestehenden und neuen Code so zu gestalten und umzuformen, dass künftige Generationen damit glücklich werden.

... link (0 Kommentare)   ... comment