besser wie tippen – Aspektorientierte Programmierung mit PostSharp

by wmn 23. November 2011 19:11

Häufig hat man ja die Anforderung bei der Anlage von Klassen immer wieder gleiche Interfaces/Methoden zu implementieren. Hierdurch erhält man immer wieder sehr ähnlichen redundanten Code. In einigen Fällen kann man sich noch durch Ableitungen helfen aber auch das ist nicht immer die Lösung.

Wer sich noch nie mit dem Thema AOP beschäftigt hat, sollte sich vorab folgendes Whitepaper unbedingt durchlesen. Es gibt einen sehr guten Gesamtüberblick über die Möglichkeiten dieser Technologie.

Ein Ausweg aus dieser Problematik kann das Tool PostSharp und die aspektorientierte Programmierung sein. Aus den Beispielen von PostSharp kann man sich eine Menge Ideen holen. Hier gibt es auch eine ganze Menge Tutorials, die man sich ansehen sollte. Die ganze Serie findet man hier  – Nach der Installation des Tools kann diese Serie übrigens auch direkt vom Studio aus aufrufen.

Visual Studio selbst unterstützt die AOP noch nicht komplett selbst. In der Regel kann man hierfür eine ganze Reihe von Bibliotheken einsetzen, die diesen Mechanismus zur Verfügung stellen. PostSharp ist eines der bekanntesten Tools und kommt inklusive einer guten VS-Integration daher.

PostSharp kann man hier herunterladen: PostSharp Download

Ein wichtiges Tool in diesem Zusammenhang ist das Programm ILSpy, das man hier herunterladen kann: http://wiki.sharpdevelop.net/ILSpy.ashxHiermit lässt sich der IL-Code von DLLs direkt und komfortabel ansehen.

Im Zusammenhang mit dem EntityFramework verwendet auch Microsoft die AOP innerhalb von VS für die eigenen Klassen. Leider wird das generieren eigener Attributklassen von VS bisher nur begrenzt unterstützt sodaß der Einsatz von Tools wie PostSharp ein ziemlich spannendes Thema ist. In jedem Fall lohnt es sich, sich mit der Thematik einmal ausführlich zu beschäftigen.

Tags:

c# | Visual Studio