Muster: Prototype
Prototyp
BearbeitenEs wird ein Prototyp benutzt um mittels Klonen neue Objekte mit den selben Eigenschaften zu erzeugen.
Zweck
BearbeitenWenn Objekte mit unterschiedlichen, aber vorher definierten Eigenschaften erzeugt werden sollen, dann kann dies mittels eines Prototyps erfolgen.
UML
BearbeitenDieser 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
BearbeitenFü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
BearbeitenWikipedia: Prototyp (Entwurfsmuster)