Design Pattern
Studienprojekt von Philipp Hauer. 2009 - 2010. ©
Strategy, Observer, Decorator, Factory Method, Abstract Factory, Singleton, Command, Composite, Facade, State
Literaturverzeichnis, Philipps Blog
Design Pattern (Entwurfsmuster) sind bewährte Lösungswege für wiederkehrende Designprobleme in der Softwareentwicklung. Sie beschreiben die essenziellen Entwurfsentscheidungen (Klassen- und Objektarrangements). Durch den Einsatz von Design Pattern wird ein Entwurf flexibel, wiederverwendbar, erweiterbar, einfacher zu verwenden und änderungsstabil.
In den Design Patterns manifestiert sich die jahrelange Berufserfahrung vieler Softewareentwicklern. Dieses Wissen und Erfahrung kann reaktiviert und nutzbar gemacht werden, ohne vorher den teuren Prozess der Entwurfsentwicklung erneut durchlaufen zu müssen. Zeitgleich schulen Design Pattern die Fähigkeit zur effektiven objektorientierten Modellierung.
Vorwort zu diesem Katalog
Die primäre Zielgruppe dieses Katalogs sind Einsteiger in der Thematik der Design Pattern. Daher wurde viel Wert auf Einsteigerfreundlichkeit und Didaktik gelegt. Darüberhinaus soll jedoch ebenfalls eine tiefgründige Analyse durchgeführt werden. Um die Divergenz dieser widersprüchlichen Anforderungen zu überwinden, wurde der Katalog zweigeteilt:
- Einführung: Anhand eines alltäglichen, intuitiven, nicht-technischen Beispiels wird das Design Pattern sukessive aufgebaut und/oder hergeleitet.
- Analyse und Diskussion: Das Design Pattern wird mit der original englischen Terminologie beschrieben, alle Variationsmöglichkeiten aufgezeigt, sowie Vor- und Nachteile dargelegt. Besonderer Wert wurde auf die Anwendung von Design Pattern gelegt (Anwendungsfälle und Blicke in die Java-API).
Katalogübersicht
Design Pattern | Vorschau | Anwendung |
---|---|---|
Strategy | Das Strategy Design Pattern ermöglicht einer Klasse das flexible Wechseln von alternativen Verhalten. Mehr zum Strategy Pattern... >> | |
Observer | Das Observer Entwurfsmuster ist für Situation geeignet, in denen ein oder mehrere Objekte benachrichtigt werden müssen, sobald sich der Zustand eines bestimmten Objekts ändert. Mehr zum Observer Pattern... >> | |
Decorator | Das Decorator Design Pattern ermöglicht es, einem Objekt dynamisch neues Verhalten hinzuzufügen. Mehr zum Decorator Pattern... >> | |
Factory Method | Das Factory Method Entwurfsmuster dient der Entkopplung des Clients von der konkreten Instanziierung einer Klasse. Das erstellte Objekt kann elegant ausgetauscht werden. Mehr zum Factory Method Pattern... >> | |
Abstract Factory | Das Abstract Factory Design Pattern dient der Definition einer zusammenhängenden Familie aus Produkten. Die Familien können elegant ausgetauscht werden. Mehr zum Abstract Factory Pattern... >> | |
Singleton | Das Singleton Entwurfsmuster sorgt dafür, dass es von einer Klasse nur eine einzige Instanz gibt und diese global zugänglich ist. Mehr zum Singleton Pattern... >> | |
Command | Das Command Design Pattern ermöglicht die Modularisierung von Befehlen und Aufrufen. Auf elegante Weise können Befehle rückgängig gemacht, protokolliert oder in einer Warteschlange gelegt werden. Mehr zum Command Pattern... >> | |
Composite | Das Composite Entwurfsmuster ermöglicht es, eine verschachtelte (Baum)Struktur einheitlich zu behandeln, unabhängig davon, ob es sich um ein atomares Element oder um ein Behälter für weitere Elemente handelt. Der Client kann elegant mit der Struktur arbeiten. Mehr zum Composite Pattern... >> | |
Facade | Das Facade Design Pattern definiert eine vereinfachte Schnittstelle zur Benutzung eines Systems oder einer Menge von Objekten. Mehr zum Facade Pattern... >> | |
State | Das State Entwurfsmuster ermöglicht die elegante Modellierung von zustandsabhängigen Verhalten eines Objekts. Je nach internen Zustand ändert sich das Verhalten des Objekts. Mehr zum State Pattern... >> |