Am Donnerstag war ich bei der „Night of Patterns“ der .Net User Group in den Räumen der Conplement AG in Nürnberg. Wie zu erwarten ging es um Designpatterns aber auch um Anti-Patterns. Die beiden Moderatoren Gustin und Alex gestalteten das Thema spannend und kurzweilig.

Einführung

Zunächst definierten die Moderatoren den Begriff „Pattern“ und unterschieden dabei zwischen Architektur-, Designpatterns, Idomen sowie Anti-Patterns. Architektur- und Designpatterns sind Lösungsschablonen für wiederkehrende Probleme. Ein Architekturpattern beschreibt dabei die Struktur einer Anwendung, während ein Designpattern einen bestimmten Teilaspekt beschreibt. Ein gutes Beispiel für Design- und Architekturpatterns sind die berühmten Patterns der Gang of Four. Im Gegensatz zu Patterns beziehen sich Idome auf eine bestimmte Programmiersprache oder Technologie. Ein Beispiel ist das Dispose-Pattern in C#. Ein Anti-Patten ist dagegen eine Schablone für eine schlechte Lösung. Ziel von Anti-Patterns ist, Erfahrungen über Fehler auszutauschen.

Night of Patterns

Patterngallerie

Nach dieser Einführung ging es zum Interaktiven Teil des Abends. Die Teilnehmer wurden dazu aufgefordert, (Anti-)Patterns auf einen Post-It zu schreiben und ans Whiteboard zu hängen

Danach wurden Gruppen gebildet und darauf geachtet, dass der Erfahrungsstand der Mitglieder möglichst unterschiedlich ist. Nun durfte sich jede Gruppe ein (Anti-)Pattern auswählen und in Gruppenarbeit eine Flipchartseite darüber erstellen. Die Struktur war vorgegeben. Neben dem Kontext und einer Beschreibung sollte aufgezeigt werden, welche Konsequenzen der Einsatz des entsprechenden Patterns hat. Zudem sollten sich die Teilnehmer Gedanken machen, wann ein Pattern ungeeignet oder auch ein Anti-Pattern geeignet sein könnte.

Nachdem jedes Team ein Pattern ausgearbeitet hatte, starteten alle Teilnehmer zum „Rundgang durch die Patterngallerie“. Dabei stellte jedes Team sein Pattern innerhalb zwei Minuten vor, anschließend gab es vier Minuten Diskussion. Durch die strikte zeitliche Taktung wurde sichergestellt, dass man sich nicht in Detaildiskussionen verliert.

Nach diesem Rundgang war noch ein wenig Zeit für lockere Diskussionen, Fachsimpeln und Erfahrungsaustausch.

Fazit

Auch wenn das Thema Patterns für mich nicht neu ist konnte ich doch die eine oder andere Idee mitnehmen. Gerade Diskussionen, wann man ein Anti-Pattern bewusst doch einsetzen kann sind immer wieder spannend. Zudem hat mir der Rahmen, wie das Thema rübergebracht wurde sehr gut gefallen. Gerade für ein Community-Event wie bei den Doddneddern genau das richtige.

Ich freue mich schon auf das nächste Treffen am 30. März. Thema ist der ReSharper SDK und wie man damit für den ReSharper Plugins erstellt.