Muster: Prototype
Prototyp[Bearbeiten]
Es wird ein Prototyp benutzt um mittels Klonen neue Objekte mit den selben Eigenschaften zu erzeugen.
Zweck[Bearbeiten]
Wenn Objekte mit unterschiedlichen, aber vorher definierten Eigenschaften erzeugt werden sollen, dann kann dies mittels eines Prototyps erfolgen.
UML[Bearbeiten]
Dieser Abschnitt wird dir die Notation in der UML zeigen. Dies wird hilfreich sein, wenn du mit modernen Entwicklungswerkzeugen (vorhandene) Projekte "begutachtest".
Entscheidungshilfen[Bearbeiten]
- Durch Abänderung des Prototypen werden automatisch alle daraus erzeugten Objekte geändert.
- Es ist jedoch nicht immer einfach die notwendigen Voraussetzungen zum Klonen zu schaffen.
Implementation[Bearbeiten]
Für die Umsetzung musst du folgendes implementieren:
- Ein Klone-Methode, welche eine vollständige Kopie [engl. deep clone] des Objekts zurückliefert.
- Instanzen der Objekte, welche später als Prototyp gelten.
- Create-Methoden oder ähnliches, welche bei der Anforderung eines Objekts den jeweilen Prototyp kopieren.
Verwandte Muster[Bearbeiten]
- Abstrakte-Fabrik-Muster: Eine abstrakte Fabrik kann Prototypen speichern, die bei Aufruf geklont und zurückgegeben werden. Das Prototypmuster kann anstelle einer der Produkthierarchie ähnlichen konkrete-Fabrik-Hierarchie benutzt werden.
- Kompositionsmuster
- Dekorierermuster
Weblinks[Bearbeiten]
Wikipedia: Prototyp (Entwurfsmuster)