Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden
0800 1 255 255

.Net Usergroup mit PostSharp und NLocalize

Gerade frisch vom heu­ti­gen Treffen der .Net Usergroup Dresden nach Hause gekom­men, wende ich mich gleich der ange­neh­men Aufgabe zu, dar­über zu berich­ten. 2 Themen, 1 Vortragender: Mathias Raacke führte uns zuerst in die "Aspektorientierte Programmierung mit PostSharp" ein und stellte danach das durch Neovelop ent­wi­ckelte Tool NLocalize vor.

Aspektorientierte Programmierung (AOP) ist ein Programmierparadigma für die zen­trale Implementierung soge­nann­ter Cross-Cutting Concerns (Querschnittsapekte). Typische Vertreter sind z.B. Logging, Exception Handling, Caching und Threading.

Die Vorteile lie­gen klar auf der Hand: Durch die Trennung der Querschnittsaspekte von der eigent­li­chen Geschäftslogik wird der Code bes­ser les­bar und wart­bar, zudem ist die Wiederverwendbarkeit der Aspekte gesichert.

Bei der Implementierung von AOP wird zwi­schen sta­ti­scher und dyna­mi­scher AOP unter­schie­den. PostSharp ist ein Vertreter der sta­ti­schen AOP und DAS Framework der Wahl für .Net-Projekte. Es ist so imple­men­tiert, dass die Aspekte mit­tels Attributen an Methoden, Eigenschaften etc. gehan­gen wer­den. Der Post-Compiler von PostSharp ändert nach­träg­lich nach dem Kompilieren durch Visual Studio die Assembly. Und darin liegt wohl für SharePoint-Entwickler nach wie vor auch die Crux: Durch die nach­träg­li­che Veränderung der Assemblies in Zusammenhang mit der Ablage in GAC ist es mir (bei einem bereits einige Jahre zurück­lie­gen­den Versuch) nicht gelun­gen, PostSharp für ein SharePoint-Projekt zu ver­wen­den und trotz­dem noch Debugging zu ermög­li­chen (eine schnelle Anfrage bei Google führt zu der Vermutung, dass die­ser Punkt auch heute noch pro­ble­ma­tisch ist). Nichtsdestotrotz ein sehr gelun­ge­ner Vortrag, in dem Mathias anhand vie­ler Beispiele zeigt, wie AOP mit­tels PostSharp sinn­voll ein­ge­setzt wer­den kann. Abschließend wurde mit Microsoft Unity noch ganz kurz ein Vertreter für dyna­mi­sche AOP vor­ge­stellt. Die Folien für den Vortrag kön­nen hier her­un­ter­ge­la­den werden.

Nach der (je nach Vorliebe kalorien- und/oder vit­amin­rei­chen) Pause kam die extra als Werbeteil ange­kün­digte Vorstellung von NLocalize.  NLocalize unter­stützt bei der Lokalisierung (momen­tan noch aus­schließ­lich) von WPF-Anwendungen. Die Unterstützung von  Silverlight und Windows Phone 7 ist aber bereits in der Roadmap ent­hal­ten. Es ist sowohl als PlugIn direkt in Visual Studio 2010 oder auch als eigen­stän­dige Anwendung (z.B. für die Nutzung durch einen Übersetzer) verfügbar.

Alles in allem ein gelun­ge­ner Abend, der den Blick mal wie­der etwas über den Tellerrand hob und mit sei­nen inter­es­san­ten Themen dafür ent­schä­digte, dass das Gehörte wohl nicht im nächs­ten (SharePoint-) Projekt anwend­bar sein wird.

Related Posts

Pin It on Pinterest