Arten von Mustern:
- schöpferisch
- strukturell
- Verhalten
Kreativ:
-
Singleton – beschränkt die Erstellung einer Klasse auf eine einzelne Instanz und bietet Zugriff auf diese einzelne Instanz.
-
Factory – wird verwendet, wenn wir eine Oberklasse mit mehreren Unterklassen haben und eine Unterklasse basierend auf der Eingabe zurückgeben müssen.
-
Abstrakte Fabrik – nutzt eine Superfabrik, um Fabriken zu erstellen, die wir dann zum Erstellen von Objekten verwenden.
-
Builder – wird zum Erstellen komplexer Objekte aus einfachen Objekten verwendet. Aus einem kleinen, einfachen Objekt entsteht nach und nach ein großes Objekt.
-
Prototyp – hilft, die Leistung beim Erstellen doppelter Objekte zu verbessern; Anstatt ein neues Objekt zu erstellen, wird ein Klon eines vorhandenen Objekts erstellt und zurückgegeben.
Strukturell:
-
Adapter – ein Konverter zwischen zwei inkompatiblen Objekten. Mit dem Adaptermuster können wir zwei inkompatible Schnittstellen kombinieren.
-
Zusammengesetzt – verwendet eine Klasse zur Darstellung einer Baumstruktur.
-
Proxy – stellt die Funktionalität einer anderen Klasse bereit.
-
Fliegengewicht – verwendet Objekte wieder, anstatt eine große Anzahl ähnlicher Objekte zu erstellen.
-
Facade – stellt eine einfache Schnittstelle für einen Client bereit, der die Schnittstelle zur Interaktion mit dem System verwendet.
-
Bridge – macht bestimmte Klassen unabhängig von Klassen, die eine Schnittstelle implementieren.
-
Decorator – fügt einem vorhandenen Objekt neue Funktionalität hinzu, ohne sich an dessen Struktur zu binden.
Verhalten:
-
Vorlagenmethode – definiert einen grundlegenden Algorithmus und ermöglicht Nachkommen, einige Schritte des Algorithmus zu überschreiben, ohne seine Gesamtstruktur zu ändern.
-
Mediator – stellt eine Zwischenklasse bereit, die die gesamte Kommunikation zwischen verschiedenen Klassen abwickelt.
-
Verantwortungskette – ermöglicht es, eine strikte Abhängigkeit zwischen Absender und Empfänger einer Anfrage zu vermeiden; zudem kann die Anfrage von mehreren Objekten bearbeitet werden.
-
Beobachter – ermöglicht einem Objekt die Überwachung und Reaktion auf Ereignisse, die in anderen Objekten auftreten.
-
Strategie – ermöglicht die Änderung von Strategien (Algorithmen) zur Laufzeit.
-
Befehl – eine Schnittstelle, die eine Methode zum Ausführen einer bestimmten Aktion deklariert.
-
Status: Ermöglicht einem Objekt, sein Verhalten abhängig von seinem Status zu ändern.
-
Besucher – wird verwendet, um Operationen an Gruppen verwandter Objekte zu vereinfachen.
-
Interpreter – definiert eine Grammatik für eine einfache Sprache in der Problemdomäne.
-
Iterator – greift sequentiell auf Elemente einer Sammlung zu, ohne deren zugrunde liegende Form zu kennen.
-
Memento – wird zum Speichern des Zustands eines Objekts verwendet; Dieser Zustand kann später wiederhergestellt werden.
Mehr Lektüre: |
---|