Entwicklertage
Heute bin ich also bei den Entwicklertagen in Karlsruhe. Schon beim Frühstück habe ich Alexander v. Zitzewitz von hello2morrow getroffen. Seine Session habe ich dann auch als erste besucht. Es ging um Architektur-Management mit SonarJ. Mit diesem Werkzeug ist es möglich, die Aufteilung in Layer einer Anwendung sicherzustellen, was ich auch schon ausprobiert habe. Interessant war für mich vor allem, dass in Hibernate jede Klasse im Mittel von 670 anderen abhängt und dass 54 der ingesamt 57 Packages in einem Zyklus sind, was die Änderbarkeit wahrscheinlich nicht positiv beeinflusst... :-)
Der zweite Vortrag war von Oliver Böhm über AOP und AspectJ. Er ging vor allem auf technische Aspekte wie Tracing, Monitoring oder Mitschneiden der Kommunikation mit anderen System. Die mitgeschnittenen Sachen kann man dann wieder für Tests verwenden. Ebenfalls zeigte er das Deklarieren von Fehler für das Einhalten von Layering und einen Aspect für Exception Logging. Vor allem interessant waren seine Erfahrungsberichte aus verschiedenen Projekten. Eine für mich überraschende Aussage war, dass der Schritt von OOP zu AOP so groß ist wie der von prozeduraler Entwicklung zu OOP. Meine Erfahrung ist eher, dass sich mit Spring das mehr oder minder automatisch ergibt, da man für Transaktionen, Sicherheit usw. eh AOP nutzt und dann der Schritt zu eigenen Aspekten oder Performance und Logging kein großer ist. Ich denke auch, dass Spring AOP eine niederigere Einstiegshürde hat als AspectJ. Gerade mit der Integration verschiedener AspectJ-Features in Spring 2.0 ergibt sich ein sanfter Migrationspfad von OOP über Spring AOP zu AspectJ (wenn man AspectJ braucht).
J for Java |
I for Internet, iMac, iPod and iPad |
Me for me