<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Erzeugungsmuster</id>
	<title>Erzeugungsmuster - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Erzeugungsmuster"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Erzeugungsmuster&amp;action=history"/>
	<updated>2026-06-11T01:27:15Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Erzeugungsmuster&amp;diff=950274&amp;oldid=prev</id>
		<title>imported&gt;Meinichselbst: Parameter fix</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Erzeugungsmuster&amp;diff=950274&amp;oldid=prev"/>
		<updated>2025-05-25T09:52:08Z</updated>

		<summary type="html">&lt;p&gt;Parameter fix&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Erzeugungsmuster&amp;#039;&amp;#039;&amp;#039; ({{enS|&amp;#039;&amp;#039;creational patterns&amp;#039;&amp;#039;}}) sind eine Teilmenge der [[Entwurfsmuster]] aus dem Bereich der [[Softwareentwicklung]], die der Erzeugung von Objekten dienen. Sie entkoppeln die [[Objekt (Programmierung)#Instanziierung|Konstruktion]] eines Objekts von seiner [[Schnittstelle (Objektorientierung)|Repräsentation]]. Die Objekterzeugung wird gekapselt und ausgelagert (z.&amp;amp;nbsp;B. in eine [[Abstrakte Fabrik|Fabrik]]), um den Kontext der Objekterzeugung unabhängig von der konkreten Implementierung zu halten, gemäß der Regel: „Programmiere gegen die Schnittstelle, nicht gegen die Implementierung!“&lt;br /&gt;
&lt;br /&gt;
Entwurfsmuster beinhalten zwei Ideen: Die erste besteht darin, das Wissen über die konkreten Klassen zu verbergen, die zweite darin, zu verbergen, wie Instanzen dieser Klassen erzeugt und verbunden werden.&amp;lt;ref&amp;gt;{{cite book|title=Design Patterns|year=1995|publisher=Addison-Wesley|location=Massachusetts|isbn=0-201-63361-2|author=Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides|page=81 |language=en}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Erzeugungsmuster werden in Objekt-Erzeugungsmuster und Klassen-Erzeugungsmuster aufgeteilt. Erstere behandeln Entwurfsmuster, die mit der Objekterzeugung zu tun haben und Teile der Objekterzeugung anderen Objekten überlassen. Letztere haben mit der Klasseninstanziierung zu tun und überlassen die Klasseninstanziierung Unterklassen.&amp;lt;ref&amp;gt;{{cite book|title=Design Patterns|year=1995|publisher=Addison-Wesley|location=Massachusetts|isbn=0-201-63361-2|author=Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides |language=en}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Beispiel für ein Erzeugungsmuster ==&lt;br /&gt;
Wenn statt&lt;br /&gt;
&lt;br /&gt;
     konto = new GiroKonto();&lt;br /&gt;
&lt;br /&gt;
eine [[Fabrikmethode]] eingesetzt wird,&lt;br /&gt;
     KontoFactory kontoFactory = &amp;#039;&amp;#039;&amp;#039;new&amp;#039;&amp;#039;&amp;#039; KontoFactory();&lt;br /&gt;
     typGiro = kontoFactory.GIRO;&lt;br /&gt;
     konto = kontoFactory.getInstance(typGiro);&lt;br /&gt;
&lt;br /&gt;
erhält man die Flexibilität, die Klasse des zu erzeugenden Objekts (hier GiroKonto) zur Laufzeit zu bestimmen, anstatt sich bereits zu Übersetzungszeit auf die konkrete Klasse festlegen zu müssen.&lt;br /&gt;
&lt;br /&gt;
Die Gründe für die Entkopplung von Konstruktion und Repräsentation eines Objekts sind je nach Erzeugungsmuster verschieden:&lt;br /&gt;
&lt;br /&gt;
== Kurzbeschreibung und Abgrenzung verschiedener Erzeugungsmuster ==&lt;br /&gt;
; [[Abstrakte Fabrik]] ({{lang|en|abstract factory}})&lt;br /&gt;
: Die abstrakte Fabrik definiert eine Schnittstelle zur Erzeugung einer Familie von Objekten, wobei die konkreten Klassen der zu erzeugenden Objekte erst zur Laufzeit festgelegt werden.&lt;br /&gt;
; [[Singleton (Entwurfsmuster)|Einzelstück]] ({{lang|en|singleton}})&lt;br /&gt;
: Von einer Klasse soll nur ein einziges Mal ein Objekt erzeugt werden, z.&amp;amp;nbsp;B. weil eine zentrale Struktur erzwungen werden soll oder eine korrespondierende Hardware-Komponente physikalisch nur einmal existiert.&lt;br /&gt;
; [[Erbauer (Entwurfsmuster)|Erbauer]] (builder)&lt;br /&gt;
: Das Entwurfsmuster Erbauer trennt den Aufbau komplexer Objekte von ihrer konkreten Darstellung. Dadurch soll ermöglicht werden, dass derselbe Konstruktionsprozess verschiedene Darstellungen erzeugen kann.&lt;br /&gt;
; [[Fabrikmethode]] ({{lang|en|factory method}})&lt;br /&gt;
: Mehrere verwandte Typen von Objekten (Klassen) implementieren die gleiche Schnittstelle, unterscheiden sich jedoch in Namen und Verwendungszweck. Nun soll in einem Programmkontext ein konkretes Objekt eines bestimmten Typs verwendet werden. &lt;br /&gt;
; [[Multiton]]&lt;br /&gt;
: Variante des Singleton-Musters, das die Anzahl erzeugter Objekte kontrolliert, z.&amp;amp;nbsp;B. um die Anzahl gleichzeitig geöffneter Datenbankverbindungen auf einen für eine gute Gesamtleistung erforderlichen Wert zu reduzieren.&lt;br /&gt;
; [[Prototyp (Entwurfsmuster)|Prototyp]] ({{lang|en|prototype}})&lt;br /&gt;
: Das Entwurfsmuster Prototyp verwendet ein Objekt als Vorlage (&amp;#039;&amp;#039;Prototyp&amp;#039;&amp;#039;), um daraus weitere Objekte zu erzeugen, die anschließend modifiziert werden können.&lt;br /&gt;
(Quelle:&amp;lt;ref name=&amp;quot;GoF-Creation&amp;quot;&amp;gt;{{Internetquelle |autor=[[Erich Gamma]], [[Richard Helm]], [[Ralph Johnson|Ralph E. Johnson]], [[John Vlissides]] |url=https://www.gofpatterns.com/creational/ |titel=Creational Patterns |werk=GofPatterns |datum=2020-11-30 |sprache=en |abruf=2020-11-30}}&amp;lt;/ref&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Nebenläufigkeit (Entwurfsmuster)|Nebenläufigkeit]]&lt;br /&gt;
* [[Strukturmuster]]&lt;br /&gt;
* [[Verhaltensmuster (Software)|Verhaltensmuster]]&lt;br /&gt;
&lt;br /&gt;
{{Navigationsleiste Entwurfsmuster}}&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:Erzeugungsmuster}}&lt;br /&gt;
[[Kategorie:Entwurfsmuster]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Meinichselbst</name></author>
	</entry>
</feed>