www.wikidata.de-de.nina.az
Erzeugungsmuster englisch creational patterns sind eine Teilmenge der Entwurfsmuster aus dem Bereich der Softwareentwicklung die der Erzeugung von Objekten dienen Sie entkoppeln die Konstruktion eines Objekts von seiner Reprasentation Die Objekterzeugung wird gekapselt und ausgelagert z B in eine Fabrik um den Kontext der Objekterzeugung unabhangig von der konkreten Implementierung zu halten gemass der Regel Programmiere gegen die Schnittstelle nicht gegen die Implementierung Entwurfsmuster beinhalten zwei Ideen Die erste besteht darin das Wissen uber die konkreten Klassen zu verbergen die zweite darin zu verbergen wie Instanzen dieser Klassen erzeugt und verbunden werden 1 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 uberlassen Letztere haben mit der Klasseninstanziierung zu tun und uberlassen die Klasseninstanziierung Unterklassen 2 Inhaltsverzeichnis 1 Beispiel fur ein Erzeugungsmuster 2 Kurzbeschreibung und Abgrenzung verschiedener Erzeugungsmuster 3 Einzelnachweise 4 Siehe auchBeispiel fur ein Erzeugungsmuster BearbeitenWenn statt konto new GiroKonto eine Fabrikmethode eingesetzt wird KontoFactory kontoFactory new KontoFactory typGiro kontoFactory GIRO konto kontoFactory getInstance typGiro erhalt man die Flexibilitat die Klasse des zu erzeugenden Objekts hier GiroKonto zur Laufzeit zu bestimmen anstatt sich bereits zu Ubersetzungszeit auf die konkrete Klasse festlegen zu mussen Die Grunde fur die Entkopplung von Konstruktion und Reprasentation eines Objekts sind je nach Erzeugungsmuster verschieden Kurzbeschreibung und Abgrenzung verschiedener Erzeugungsmuster BearbeitenAbstrakte Fabrik abstract factory 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 Einzelstuck singleton Von einer Klasse soll nur ein einziges Mal ein Objekt erzeugt werden z B weil eine zentrale Struktur erzwungen werden soll oder eine korrespondierende Hardware Komponente physikalisch nur einmal existiert Erbauer builder Das Entwurfsmuster Erbauer trennt den Aufbau komplexer Objekte von ihrer konkreten Darstellung Dadurch soll ermoglicht werden dass derselbe Konstruktionsprozess verschiedene Darstellungen erzeugen kann Fabrikmethode factory method 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 Multiton Variante des Singleton Musters das die Anzahl erzeugter Objekte kontrolliert z B um die Anzahl gleichzeitig geoffneter Datenbankverbindungen auf einen fur eine gute Gesamtleistung erforderlichen Wert zu reduzieren Prototyp prototype Das Entwurfsmuster Prototyp verwendet ein Objekt als Vorlage Prototyp um daraus weitere Objekte zu erzeugen die anschliessend modifiziert werden konnen Quelle 3 Einzelnachweise Bearbeiten Erich Gamma Richard Helm Ralph Johnson John Vlissides Design Patterns Addison Wesley Massachusetts 1995 ISBN 0 201 63361 2 S 81 Erich Gamma Richard Helm Ralph Johnson John Vlissides Design Patterns Addison Wesley Massachusetts 1995 ISBN 0 201 63361 2 Erich Gamma Richard Helm Ralph E Johnson John Vlissides Creational Patterns In GofPatterns 30 November 2020 abgerufen am 30 November 2020 englisch Siehe auch BearbeitenNebenlaufigkeit Strukturmuster VerhaltensmusterV DEntwurfsmusterErzeugungsmuster Abstrakte Fabrik Erbauer Fabrikmethode Prototyp Singleton Multiton ObjektpoolStrukturmuster Adapter Brucke Decorator Fassade Fliegengewicht Kompositum StellvertreterVerhaltensmuster Beobachter Besucher Interpreter Iterator Kommando Memento Schablonenmethode Strategie Vermittler Zustand Zustandigkeitskette Interceptor Nullobjekt ProtokollstapelMuster fur objektrelationale Abbildung Datentransferobjekt Table Data Gateway Row Data Gateway Active Record Unit of Work Identity Map Lazy Loading Identity Field Dependent Mapping Embedded Value Serialized LOB Inheritance Mapper Metadata Mapping Query Object Command Query Responsibility SegregationNachrichtenubermittlungsmuster Message Command Message Document Message Event Message Request Reply Return Address Correlation Identifier Message Sequence Message Expiration Format Indicator Message Channel Point to Point Channel Publisher Subscriber Channel Datatype Channel Invalid Message Channel Dead Letter Channel Guaranteed Delivery Channel Adapter Messaging Bridge Message Bus Pipes and Filters Message Router Content based Router Message Filter Dynamic Router Recipient List Splitter Aggregator Resequencer Composed Message Processor Scatter Gather Routing Slip Process Manager Message Broker Message Translator Envelope Wrapper Content Enricher Content Filter Claim Check Normalizer Canonical Data Model Message Endpoint Messaging Gateway Messaging Mapper Transactional Client Polling Consumer Event driven Consumer Competing Consumers Message Dispatcher Selective Consumer Durable Subscriber Idempotent Receiver Service Activator Control Bus Detour Wire Tap Message History Message Store Smart Proxy Test Message Channel PurgerAndere Application Controller Business Delegate Data Access Object Dependency Injection Extension Interface Fluent Interface Inversion of Control IoC Lock Model View Controller MVC Model View Presenter MVP Model View Update MVU Model View ViewModel MVVM Page Controller Registry Remote Facade Repository Service Locator Session State Table Module Template View Threadpool Transaction Script Transform View Two Step View Value ObjectSiehe auch Analysemuster Architekturmuster Abgerufen von https de wikipedia org w index php title Erzeugungsmuster amp oldid 227385639