Entwurfsmuster - Übersicht
Entwurfsmuster stellen die Best Practices dar, die von erfahrenen objektorientierten Softwareentwicklern verwendet werden. Entwurfsmuster sind Lösungen für allgemeine Probleme, mit denen Softwareentwickler während der Softwareentwicklung konfrontiert waren. Diese Lösungen wurden von zahlreichen Softwareentwicklern über einen längeren Zeitraum durch Ausprobieren erhalten.
Was ist Gang of Four (GOF)?
1994 veröffentlichten vier Autoren, Erich Gamma, Richard Helm, Ralph Johnson und John Vlissides, ein Buch mit dem Titel Design Patterns - Elements of Reusable Object-Oriented Software das initiierte das Konzept des Design Pattern in der Softwareentwicklung.
Diese Autoren sind zusammen bekannt als Gang of Four (GOF). Diesen Autoren zufolge basieren Entwurfsmuster hauptsächlich auf den folgenden Prinzipien des objektorientierten Entwurfs.
Programmieren Sie auf eine Schnittstelle, keine Implementierung
Bevorzugen Sie die Objektzusammensetzung gegenüber der Vererbung
Verwendung des Entwurfsmusters
Entwurfsmuster haben zwei Hauptverwendungen in der Softwareentwicklung.
Gemeinsame Plattform für Entwickler
Entwurfsmuster bieten eine Standardterminologie und sind spezifisch für ein bestimmtes Szenario. Beispielsweise bedeutet ein Singleton-Entwurfsmuster die Verwendung eines einzelnen Objekts, sodass alle Entwickler, die mit einem einzelnen Entwurfsmuster vertraut sind, ein einzelnes Objekt verwenden und sich gegenseitig mitteilen können, dass das Programm einem Singleton-Muster folgt.
Empfohlene Vorgehensweise
Entwurfsmuster wurden über einen langen Zeitraum entwickelt und bieten die besten Lösungen für bestimmte Probleme, die während der Softwareentwicklung auftreten. Das Erlernen dieser Muster hilft unerfahrenen Entwicklern, Software-Design auf einfache und schnellere Weise zu erlernen.
Arten von Entwurfsmustern
Gemäß dem Nachschlagewerk für Entwurfsmuster Design Patterns - Elements of Reusable Object-Oriented SoftwareEs gibt 23 Entwurfsmuster, die in drei Kategorien eingeteilt werden können: Kreations-, Struktur- und Verhaltensmuster. Wir werden auch eine andere Kategorie von Entwurfsmustern diskutieren: J2EE-Entwurfsmuster.
SN | Muster & Beschreibung |
---|---|
1 | Creational Patterns Diese Entwurfsmuster bieten eine Möglichkeit, Objekte zu erstellen, während die Erstellungslogik ausgeblendet wird, anstatt Objekte direkt mit einem neuen Operator zu instanziieren. Dies gibt dem Programm mehr Flexibilität bei der Entscheidung, welche Objekte für einen bestimmten Anwendungsfall erstellt werden müssen. |
2 | Structural Patterns Diese Entwurfsmuster betreffen die Klassen- und Objektzusammensetzung. Das Konzept der Vererbung wird verwendet, um Schnittstellen zu erstellen und Möglichkeiten zum Erstellen von Objekten zu definieren, um neue Funktionen zu erhalten. |
3 | Behavioral Patterns Diese Entwurfsmuster befassen sich speziell mit der Kommunikation zwischen Objekten. |
4 | J2EE Patterns Diese Entwurfsmuster betreffen speziell die Präsentationsebene. Diese Muster werden von Sun Java Center identifiziert. |