|
Start / Professionals & Projects / IT-Consulting / - Design Patterns
|
|
Design Patterns: Architekturen wieder verwenden
|
 |
|
|
|
Kontakt
|
Der Bedarf
Für den Softwareentwickler bedeutet der Einsatz von objektorientierten Methoden ein Umdenken in
der Analyse und Planung von Softwareprojekten. Mit steigendem Umfang von Lösungen gewinnt die
technische Architektur eine rapide steigende Bedeutung im gesamten Planungsprozess. Die
Unterstützung der Planung mit UML-Werkzeugen reicht bei weitem nicht mehr für die erfolgreiche
Beschreibung von unternehmensweiten Lösungen aus.
Die Lösung
In modernen Architekturen finden sich neben den klassischen Ansätzen der Objektorientierung neue
Elemente der Beschreibung, die als Entwurfsmuster bekannten Design Patterns. Unter Design Patterns
werden allgemein von Experten beschriebene Vorgehensweisen für immer wiederkehrende
Problemstellungen verstanden.
In der Praxis führt der Einsatz von Design Patterns zu einer wesentlichen Verbesserung der
Struktur von Software: Forderungen wie Schichtentrennung oder Erweiterungsfähigkeit folgen
unmittelbar aus dem grundlegenden Ansatz von Lösungsmustern. Ein schon relativ altes Beispiel für
Entwurfsmuster ist das Model-View-Controller-Pattern (MVC), welches aus der Smalltalk-Welt stammt
und heute regen Einsatz bei der Entwicklung von Java-Frameworks findet. Das Muster spiegelt
vereinfacht dargestellt die Trennung von Persistenz, Ereignissteuerung und Benutzeroberfläche
wieder und ist als eine Grundlage für verteilte Systeme zu verstehen. Neben dem MVC-Pattern gibt es
eine Reihe weiterer bekannter Muster, die von der berühmten Gang of Four (GoF) Erich Gamma, Richard
Helm, Ralph Johnson und John Vlissides in vielen Büchern beschrieben wurden.
Verschiedene Gruppen von Patterns
Unter Software-Architekten haben die Ausführungen der Gang of Four einen hohen Stellenwert und
werden als eine Basis für den erfolgreichen Einsatz von Entwicklungsmustern angesehen. Insgesamt
beschreibt die GoF 23 Patterns, die sich in drei Gruppen aufteilen:
- Creation Design Patterns
beschreiben das Erzeugen von Objekten,
- Structural Design Patterns
liefern Muster für die Anwendung von Objekten und
- Behavioral Design Patterns
sind für das Verhalten von Objekten zuständig.
Die genannten Gruppen von Patterns spiegeln die Erfahrung von Designexperten wieder und sind als
gesammelte und katalogisierte Muster für die Wiederverwendung hochwertiger Designs zu verstehen.
Das Gesamtkonzept der Objektorientierung mit den Techniken der Kapselung, Vererbung und Polymorphie
wird also durch Design-Patterns auf einer anderen Ebene, der Architektur, qualitativ erweitert.
Erfolgreiche objektorientierte Projekte werden immer bestrebt sein, Design-Muster zu implemetieren
und musterunterstützende Frameworks als Architekturgrundlage einzusetzen. Eine intensive
Auseinandersetzung mit Design Patterns sollte Bestandteil der Architekturplanung für die
Entwicklung jeder unternehmensweiten Lösung sein. Es ist in jedem Fall sinnvoll, an den in vielen
Jahren gesammelten Erfahrungen der Experten teilzuhaben und die erfolgreichen Muster
einzusetzen.
Literatur
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides.
Entwurfsmuster, Elemente wiederverwendbarer Software. Addison-Wesley 1996.
Frank Buschmann.
Pattern-orientierte Software-Architektur. Ein Pattern-System. Addison-Wesley 1998.
|
|