aktuelle.kurse/m426/4_Erweiterungen/Entwurfsmuster/Entwurfsmuster (Design Pattern)

702 lines
125 KiB
Plaintext
Raw Normal View History

2021-10-23 00:41:45 +02:00
<!DOCTYPE html>
<html class="client-nojs" lang="de" dir="ltr">
<head>
<meta charset="UTF-8"/>
<title>Entwurfsmuster Wikipedia</title>
<script>document.documentElement.className="client-js";RLCONF={"wgBreakFrames":!1,"wgSeparatorTransformTable":[",\t.",".\t,"],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],"wgRequestId":"a24ec59d-9978-4f18-90d6-7c5b14624c5a","wgCSPNonce":!1,"wgCanonicalNamespace":"","wgCanonicalSpecialPageName":!1,"wgNamespaceNumber":0,"wgPageName":"Entwurfsmuster","wgTitle":"Entwurfsmuster","wgCurRevisionId":215264580,"wgRevisionId":215264580,"wgArticleId":11799,"wgIsArticle":!0,"wgIsRedirect":!1,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Entwurfsmuster","Systems Engineering"],"wgPageContentLanguage":"de","wgPageContentModel":"wikitext","wgRelevantPageName":"Entwurfsmuster","wgRelevantArticleId":11799,"wgIsProbablyEditable":!0,"wgRelevantPageIsProbablyEditable":!0,"wgRestrictionEdit":[],"wgRestrictionMove":[],
"wgFlaggedRevsParams":{"tags":{"accuracy":{"levels":1}}},"wgStableRevisionId":215264580,"wgMediaViewerOnClick":!0,"wgMediaViewerEnabledByDefault":!0,"wgPopupsFlags":4,"wgVisualEditor":{"pageLanguageCode":"de","pageLanguageDir":"ltr","pageVariantFallbacks":"de"},"wgMFDisplayWikibaseDescriptions":{"search":!0,"nearby":!0,"watchlist":!0,"tagline":!0},"wgWMESchemaEditAttemptStepOversample":!1,"wgULSCurrentAutonym":"Deutsch","wgNoticeProject":"wikipedia","wgEditSubmitButtonLabelPublish":!0,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":!0,"wgGENewcomerTasksGuidanceEnabled":!0,"wgGEAskQuestionEnabled":!0,"wgGELinkRecommendationsFrontendEnabled":!0,"wgCentralAuthMobileDomain":!1,"wgWikibaseItemId":"Q181156"};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.flaggedRevs.icons":"ready","oojs-ui-core.styles":"ready",
"oojs-ui.styles.indicators":"ready","mediawiki.widgets.styles":"ready","oojs-ui-core.icons":"ready","ext.cite.styles":"ready","skins.vector.styles.legacy":"ready","ext.flaggedRevs.basic":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","ext.wikimediaBadges":"ready","wikibase.client.init":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","site","mediawiki.page.ready","mediawiki.toc","skins.vector.legacy.js","ext.flaggedRevs.advanced","ext.gadget.editMenus","ext.gadget.WikiMiniAtlas","ext.gadget.OpenStreetMap","ext.gadget.CommonsDirekt","mmv.head","mmv.bootstrap.autostart","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.compactlinks","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.centralauth.centralautologin","ext.growthExperiments.SuggestedEditSession"];</script>
<script>(RLQ=window.RLQ||[]).push(function(){mw.loader.implement("user.options@1hzgi",function($,jQuery,require,module){/*@nomin*/mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"});mw.user.options.set({"variant":"de"});
});});</script>
<link rel="stylesheet" href="/w/load.php?lang=de&amp;modules=ext.cite.styles%7Cext.flaggedRevs.basic%2Cicons%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediaBadges%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.styles.legacy%7Cwikibase.client.init&amp;only=styles&amp;skin=vector"/>
<script async="" src="/w/load.php?lang=de&amp;modules=startup&amp;only=scripts&amp;raw=1&amp;skin=vector"></script>
<meta name="ResourceLoaderDynamicStyles" content=""/>
<link rel="stylesheet" href="/w/load.php?lang=de&amp;modules=site.styles&amp;only=styles&amp;skin=vector"/>
<meta name="generator" content="MediaWiki 1.38.0-wmf.4"/>
<meta name="referrer" content="origin"/>
<meta name="referrer" content="origin-when-crossorigin"/>
<meta name="referrer" content="origin-when-cross-origin"/>
<meta name="format-detection" content="telephone=no"/>
<meta property="og:title" content="Entwurfsmuster Wikipedia"/>
<meta property="og:type" content="website"/>
<link rel="preconnect" href="//upload.wikimedia.org"/>
<link rel="alternate" media="only screen and (max-width: 720px)" href="//de.m.wikipedia.org/wiki/Entwurfsmuster"/>
<link rel="alternate" type="application/x-wiki" title="Seite bearbeiten" href="/w/index.php?title=Entwurfsmuster&amp;action=edit"/>
<link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"/>
<link rel="shortcut icon" href="/static/favicon/wikipedia.ico"/>
<link rel="search" type="application/opensearchdescription+xml" href="/w/opensearch_desc.php" title="Wikipedia (de)"/>
<link rel="EditURI" type="application/rsd+xml" href="//de.wikipedia.org/w/api.php?action=rsd"/>
<link rel="license" href="https://creativecommons.org/licenses/by-sa/3.0/"/>
<link rel="canonical" href="https://de.wikipedia.org/wiki/Entwurfsmuster"/>
<link rel="dns-prefetch" href="//meta.wikimedia.org" />
<link rel="dns-prefetch" href="//login.wikimedia.org"/>
</head>
<body class="mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-Entwurfsmuster rootpage-Entwurfsmuster skin-vector action-view skin-vector-legacy"><div id="mw-page-base" class="noprint"></div>
<div id="mw-head-base" class="noprint"></div>
<div id="content" class="mw-body" role="main">
<a id="top"></a>
<div id="siteNotice"><!-- CentralNotice --></div>
<div class="mw-indicators">
</div>
<h1 id="firstHeading" class="firstHeading" >Entwurfsmuster</h1>
<div id="bodyContent" class="vector-body">
<div id="siteSub" class="noprint">aus Wikipedia, der freien Enzyklopädie</div>
<div id="contentSub"></div>
<div id="contentSub2"></div>
<div id="jump-to-nav"></div>
<a class="mw-jump-link" href="#mw-head">Zur Navigation springen</a>
<a class="mw-jump-link" href="#searchInput">Zur Suche springen</a>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-parser-output"><div class="hintergrundfarbe1 rahmenfarbe1 navigation-not-searchable noprint hatnote" style="border-bottom-style: solid; border-bottom-width: 1px; font-size:95%; margin-bottom:1em; padding: 0.25em; overflow: hidden; word-break: break-word; word-wrap: break-word;" id="Vorlage_Dieser_Artikel"><div class="noviewer" style="display: table-cell; padding-bottom: 0.2em; padding-left: 0.25em; padding-right: 1em; padding-top: 0.2em; vertical-align: middle;" id="bksicon" aria-hidden="true" role="presentation"><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/e/ea/Disambig-dark.svg/25px-Disambig-dark.svg.png" decoding="async" width="25" height="19" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/e/ea/Disambig-dark.svg/38px-Disambig-dark.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/e/ea/Disambig-dark.svg/50px-Disambig-dark.svg.png 2x" data-file-width="444" data-file-height="340" /></div>
<div style="display: table-cell; vertical-align: middle; width: 100%;">
<div role="navigation">
Dieser Artikel behandelt die Lösungsschablonen für wiederkehrende Entwurfsprobleme. Für das gleichnamige Buch siehe <a href="/wiki/Entwurfsmuster_(Buch)" title="Entwurfsmuster (Buch)">Entwurfsmuster (Buch)</a>.</div>
</div></div>
<p><b>Entwurfsmuster</b> (<span style="font-style:normal;font-weight:normal"><a href="/wiki/Englische_Sprache" title="Englische Sprache">englisch</a></span> <span lang="en-Latn" style="font-style:italic">design patterns</span>) sind bewährte Lösungsschablonen für wiederkehrende Entwurfsprobleme sowohl in der <a href="/wiki/Architektur" title="Architektur">Architektur</a> als auch in der <a href="/wiki/Softwarearchitektur" title="Softwarearchitektur">Softwarearchitektur</a> und <a href="/wiki/Softwaretechnik" title="Softwaretechnik">-entwicklung</a>. Sie stellen damit eine wiederverwendbare Vorlage zur Problemlösung dar, die in einem bestimmten Zusammenhang einsetzbar ist. In den letzten Jahren hat der Ansatz der Entwurfsmuster auch zunehmendes Interesse im Bereich der <a href="/wiki/Mensch-Computer-Interaktion" title="Mensch-Computer-Interaktion">Mensch-Computer-Interaktion</a> gefunden. Ursprünglich wurde der Begriff in der Architektur von <a href="/wiki/Christopher_Alexander" title="Christopher Alexander">Christopher Alexander</a> verwendet.<sup id="cite_ref-Zeller_1-0" class="reference"><a href="#cite_note-Zeller-1">&#91;1&#93;</a></sup>
</p>
<div id="toc" class="toc" role="navigation" aria-labelledby="mw-toc-heading"><input type="checkbox" role="button" id="toctogglecheckbox" class="toctogglecheckbox" style="display:none" /><div class="toctitle" lang="de" dir="ltr"><h2 id="mw-toc-heading">Inhaltsverzeichnis</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span></div>
<ul>
<li class="toclevel-1 tocsection-1"><a href="#Arten_von_Entwurfsmustern"><span class="tocnumber">1</span> <span class="toctext">Arten von Entwurfsmustern</span></a></li>
<li class="toclevel-1 tocsection-2"><a href="#Geschichte"><span class="tocnumber">2</span> <span class="toctext">Geschichte</span></a></li>
<li class="toclevel-1 tocsection-3"><a href="#Anforderungen_und_Nutzen"><span class="tocnumber">3</span> <span class="toctext">Anforderungen und Nutzen</span></a></li>
<li class="toclevel-1 tocsection-4"><a href="#Nachteile"><span class="tocnumber">4</span> <span class="toctext">Nachteile</span></a></li>
<li class="toclevel-1 tocsection-5"><a href="#Musterkataloge"><span class="tocnumber">5</span> <span class="toctext">Musterkataloge</span></a>
<ul>
<li class="toclevel-2 tocsection-6"><a href="#Liste_von_Mustern"><span class="tocnumber">5.1</span> <span class="toctext">Liste von Mustern</span></a></li>
</ul>
</li>
<li class="toclevel-1 tocsection-7"><a href="#Andere_Arten_von_Mustern"><span class="tocnumber">6</span> <span class="toctext">Andere Arten von Mustern</span></a></li>
<li class="toclevel-1 tocsection-8"><a href="#Antimuster"><span class="tocnumber">7</span> <span class="toctext">Antimuster</span></a></li>
<li class="toclevel-1 tocsection-9"><a href="#Siehe_auch"><span class="tocnumber">8</span> <span class="toctext">Siehe auch</span></a></li>
<li class="toclevel-1 tocsection-10"><a href="#Literatur"><span class="tocnumber">9</span> <span class="toctext">Literatur</span></a></li>
<li class="toclevel-1 tocsection-11"><a href="#Weblinks"><span class="tocnumber">10</span> <span class="toctext">Weblinks</span></a></li>
<li class="toclevel-1 tocsection-12"><a href="#Einzelnachweise"><span class="tocnumber">11</span> <span class="toctext">Einzelnachweise</span></a></li>
</ul>
</div>
<h2><span class="mw-headline" id="Arten_von_Entwurfsmustern">Arten von Entwurfsmustern</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=1" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Arten von Entwurfsmustern">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=1" title="Abschnitt bearbeiten: Arten von Entwurfsmustern">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<div class="thumb tright"><div class="thumbinner" style="width:422px;"><a href="/wiki/Datei:Prototyp.svg" class="image"><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/5/5e/Prototyp.svg/420px-Prototyp.svg.png" decoding="async" width="420" height="134" class="thumbimage" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/5/5e/Prototyp.svg/630px-Prototyp.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/5/5e/Prototyp.svg/840px-Prototyp.svg.png 2x" data-file-width="511" data-file-height="163" /></a> <div class="thumbcaption"><div class="magnify"><a href="/wiki/Datei:Prototyp.svg" class="internal" title="vergrößern und Informationen zum Bild anzeigen"></a></div>Das Entwurfsmuster <i>Prototyp</i> mit der <a href="/wiki/Unified_Modeling_Language" title="Unified Modeling Language">Unified Modeling Language</a> (UML)</div></div></div>
<p>Es gibt verschiedene Typen von Entwurfsmustern. Ursprünglich wurden folgende Typen vom Autorenquartett <a href="/wiki/Entwurfsmuster_(Buch)" title="Entwurfsmuster (Buch)">Gang of Four</a> (GoF)<sup id="cite_ref-GoF_2-0" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup> unterschieden:
</p>
<ul><li><b><a href="/wiki/Erzeugungsmuster" title="Erzeugungsmuster">Erzeugungsmuster</a> (<i><span lang="en">Creational Patterns</span></i>)</b></li></ul>
<dl><dd>Dienen der Erzeugung von Objekten. Sie entkoppeln die Konstruktion eines Objekts von seiner Repräsentation. Die Objekterzeugung wird gekapselt und ausgelagert, um den Kontext der Objekterzeugung unabhängig von der konkreten Implementierung zu halten, gemäß der Regel: „Programmiere auf die Schnittstelle, nicht auf die Implementierung!“</dd></dl>
<ul><li><b><a href="/wiki/Strukturmuster" title="Strukturmuster">Strukturmuster</a> (<i><span lang="en">Structural Patterns</span></i>)</b></li></ul>
<dl><dd>Erleichtern den Entwurf von Software durch vorgefertigte Schablonen für Beziehungen zwischen Klassen.</dd></dl>
<ul><li><b><a href="/wiki/Verhaltensmuster_(Software)" title="Verhaltensmuster (Software)">Verhaltensmuster</a> (<i><span lang="en">Behavioral Patterns</span></i>)</b></li></ul>
<dl><dd>Modellieren komplexes Verhalten der Software und erhöhen damit die Flexibilität der Software hinsichtlich ihres Verhaltens.</dd></dl>
<p>Später kamen noch weitere Typen für diejenigen Entwurfsmuster, die in keine der drei genannten Typen passten, hinzu. Darunter beispielsweise:
</p>
<ul><li><b>Muster für <a href="/wiki/Objektrelationale_Abbildung" title="Objektrelationale Abbildung">objektrelationale Abbildung</a></b></li></ul>
<dl><dd>Dienen der Ablage und dem Zugriff von Objekten und deren Beziehungen in einer relationalen Datenbank.<sup id="cite_ref-PoEAA_3-0" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></dd></dl>
<ul><li><b><a href="/wiki/Nachrichten%C3%BCbermittlungsmuster" title="Nachrichtenübermittlungsmuster">Nachrichtenübermittlungsmuster</a> (<i><span lang="en">Messaging Patterns</span></i>)</b></li></ul>
<dl><dd>Für die Erstellung, die Weiterleitung und die Umwandlung von Daten in Form von Nachrichten, inklusive der dazu benötigten Nachrichtenkanäle und Nachrichtenendpunkte, sowie Komponenten für die Systemverwaltung.</dd></dl>
<h2><span class="mw-headline" id="Geschichte">Geschichte</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=2" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Geschichte">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=2" title="Abschnitt bearbeiten: Geschichte">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<p>Ein Ansatz für Entwurfsmuster wurde vom Architekten <a href="/wiki/Christopher_Alexander" title="Christopher Alexander">Christopher Alexander</a> 1964 in <i>Notes on the synthesis of form</i> dargestellt. Zwischen 1977 und 1979 stellte er dann, in einer auf den römischen Architekten <a href="/wiki/Vitruv" title="Vitruv">Marcus Vitruvius Pollio, genannt Vitruv</a>, zurückgehenden Tradition, eine Sammlung von Entwurfsmustern zusammen.<sup id="cite_ref-Alexander_4-0" class="reference"><a href="#cite_note-Alexander-4">&#91;4&#93;</a></sup> Die Hauptaufgabe dieser Muster war es, die Bewohner der zu bauenden Strukturen in den Entwurfsprozess mit einzubinden. In der Architektur hat sich diese Idee jedoch bei weitem nicht so verbreitet wie später in der Softwareentwicklung.
</p><p><a href="/wiki/Kent_Beck" title="Kent Beck">Kent Beck</a> und <a href="/wiki/Ward_Cunningham" title="Ward Cunningham">Ward Cunningham</a> griffen 1987 die Ideen Alexanders aus der Architektur auf und entwickelten Entwurfsmuster für die Erstellung von <a href="/wiki/Grafische_Benutzeroberfl%C3%A4che" title="Grafische Benutzeroberfläche">grafischen Benutzeroberflächen</a> in <a href="/wiki/Smalltalk_(Programmiersprache)" title="Smalltalk (Programmiersprache)">Smalltalk</a>. Ein Jahr später begann <a href="/wiki/Erich_Gamma" title="Erich Gamma">Erich Gamma</a> mit seiner Promotion an der <a href="/wiki/Universit%C3%A4t_Z%C3%BCrich" title="Universität Zürich">Universität Zürich</a> über die generelle Übertragung dieser Methode auf die Softwareentwicklung. Parallel dazu arbeitete <a href="/w/index.php?title=James_Coplien&amp;action=edit&amp;redlink=1" class="new" title="James Coplien (Seite nicht vorhanden)">James Coplien</a> in den Jahren 1989 bis 1991 an musterähnlichen <a href="/wiki/Idiom_(Softwaretechnik)" title="Idiom (Softwaretechnik)">Idiomen</a> für <a href="/wiki/C%2B%2B" title="C++">C++</a> und veröffentlichte 1991 sein Buch <i>Advanced C++ Idioms</i>.
</p><p>Erich Gamma beendete im selben Jahr seine Promotion und ging im Anschluss in die <a href="/wiki/Vereinigte_Staaten" title="Vereinigte Staaten">Vereinigten Staaten</a>. Dort brachte er 1994 zusammen mit <a href="/wiki/Richard_Helm" title="Richard Helm">Richard Helm</a>, <a href="/wiki/Ralph_Johnson" title="Ralph Johnson">Ralph Johnson</a> und <a href="/wiki/John_Vlissides" title="John Vlissides">John Vlissides</a> das Buch <a href="/wiki/Entwurfsmuster_(Buch)" title="Entwurfsmuster (Buch)"><i>Design Patterns Elements of Reusable Object-Oriented Software</i></a> heraus, in dem 23 Entwurfsmuster beschrieben sind. Die vier Autoren sind unter Entwicklern weltweit auch unter ihrem Spitznamen <i>Gang of Four</i> (<i>Viererbande</i>), kurz <i>GoF</i>, bekannt und verhalfen mit ihrem Buch den Entwurfsmustern zu einem Durchbruch. Gelegentlich wird <i>GoF</i> auch als Verweis auf das besagte Buch verwendet. Anders als Alexander, der seine Muster vor allem für Laien geschrieben hatte, richten sich die GoF-Muster an <a href="/wiki/Softwareentwickler" title="Softwareentwickler">Softwareentwickler</a> und nicht an Benutzer.
</p>
<h2><span class="mw-headline" id="Anforderungen_und_Nutzen">Anforderungen und Nutzen</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=3" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Anforderungen und Nutzen">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=3" title="Abschnitt bearbeiten: Anforderungen und Nutzen">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<p>Ein gutes Muster sollte:
</p>
<ul><li>ein oder mehrere <a href="/wiki/Probleml%C3%B6sen" title="Problemlösen">Probleme lösen</a>,</li>
<li>ein erprobtes Konzept bieten,</li>
<li>auf realen Designs basieren,</li>
<li>über das rein Offensichtliche hinausgehen,</li>
<li>den Benutzer in den Entwurfsprozess einbinden,</li>
<li><a href="/wiki/Relation" title="Relation">Beziehungen</a> aufzeigen, die tiefergehende Strukturen und Mechanismen eines <a href="/wiki/System" title="System">Systems</a> umfassen.</li></ul>
<p>Entwurfsmuster beinhalten in der Regel Referenzen auf andere Muster. Mithilfe dieser ist es möglich, <a href="/wiki/Mustersprache" title="Mustersprache">Mustersprachen</a> zu entwickeln.
</p><p>Der primäre Nutzen eines Entwurfsmusters liegt in der Beschreibung einer Lösung für eine bestimmte Klasse von Entwurfsproblemen. Weiterer Nutzen ergibt sich aus der Tatsache, dass jedes Muster einen Namen hat. Dies vereinfacht die Diskussion unter Entwicklern, da man abstrakt über eine Struktur sprechen kann. So sind etwa Software-Entwurfsmuster im Gegensatz zu <a href="/wiki/Idiom_(Softwaretechnik)" title="Idiom (Softwaretechnik)">Idiomen</a> zunächst einmal unabhängig von der konkreten Programmiersprache.
</p><p>Wenn der Einsatz von Entwurfsmustern dokumentiert wird, ergibt sich ein weiterer Nutzen dadurch, dass durch die Beschreibung des Musters ein Bezug zur dort vorhandenen Diskussion des Problemkontextes und der Vor- und Nachteile der Lösung hergestellt wird.
</p>
<h2><span class="mw-headline" id="Nachteile">Nachteile</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=4" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Nachteile">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=4" title="Abschnitt bearbeiten: Nachteile">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<p>Der erfolgreiche Einsatz von Entwurfsmustern in der Vergangenheit kann dazu verleiten, die Entwurfsmuster als Wunderwaffe und Garant für gutes Design anzusehen. Unerfahrene Entwickler können geneigt sein, möglichst viele bekannte Muster zu verwenden, und dabei übersehen, dass in ihrem Fall vielleicht eine elegantere Lösung ohne den Einsatz von Mustern möglich wäre. Entwurfsmuster garantieren nicht, dass der Entwurf gut ist. Insofern ist die Anwendung zu vieler oder ungeeigneter Entwurfsmuster ein <a href="#Antimuster">Antimuster</a>.
</p>
<h2><span class="mw-headline" id="Musterkataloge">Musterkataloge</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=5" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Musterkataloge">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=5" title="Abschnitt bearbeiten: Musterkataloge">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<p>Entwurfsmuster werden üblicherweise nach dem Vorbild der Bücher von <a href="/wiki/Christopher_Alexander" title="Christopher Alexander">Christopher Alexander</a> und der Gang of Four in sogenannten Musterkatalogen (englisch „Design Pattern Catalogs“) gesammelt. Diese beschreiben die einzelnen Muster katalogartig anhand ihrer Eigenschaften. Diese Eigenschaften sind beispielsweise beim Buch <i>Design Patterns Elements of Reusable Object-Oriented Software</i> folgende: Aufgabe, Andere Namen, Motivation, Anwendbarkeit, Struktur, Teilnehmer, Kollaborationen, Konsequenzen, Implementierung, Beispielcode, bekannte Verwendungen, verwandte Muster.
</p><p>Neben dem Entwurfsmusterkatalog der Gang of Four mit den oben genannten Erzeugungsmustern, Strukturmustern und Verhaltensmustern, gibt es eine Reihe weiterer Kataloge. Zu diesen zählen die Bücher <i>Enterprise Integration Patterns</i>, <i>Patterns of Enterprise Application Architecture</i>, <i>Pattern-Oriented Software Architecture, Volume 1, A System of Patterns</i>, <i>Refactoring To Patterns</i> sowie die <i>Core J2EE Patterns</i>. (Siehe dazu auch Abschnitt <a href="#Literatur">Literatur</a> unten.)
</p>
<h3><span class="mw-headline" id="Liste_von_Mustern">Liste von Mustern</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=6" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Liste von Mustern">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=6" title="Abschnitt bearbeiten: Liste von Mustern">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h3>
<p>Die folgende Liste enthält Entwurfsmuster der <a href="/wiki/Entwurfsmuster_(Buch)" title="Entwurfsmuster (Buch)">Gang of Four</a>, funktionale Verhaltensmuster von Stuart Sierra<sup id="cite_ref-Sierra_5-0" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup> sowie andere Entwurfsmuster aus anderen Katalogen. Die ersten drei Abschnitte stellen die Teilmengen dar, in die die Entwurfsmuster im Buch <i>Design Patterns</i> kategorisiert wurden. Der vierte Abschnitt enthält Muster für die <a href="/wiki/Objektrelationale_Abbildung" title="Objektrelationale Abbildung">objektrelationale Abbildung</a> die insbesondere von <a href="/wiki/Martin_Fowler" title="Martin Fowler">Martin Fowler</a> geprägt wurden.<sup id="cite_ref-PoEAA_3-1" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup> Der fünfte Abschnitt enthält Entwurfsmuster für die Kommunikation zwischen Anwendungen, die von Gregor Hope und Bobby Woolf im Buch <i>Enterprise Integration Patterns</i><sup id="cite_ref-EIP-Book_6-0" class="reference"><a href="#cite_note-EIP-Book-6">&#91;6&#93;</a></sup> beschrieben wurden. Der sechste Abschnitt enthält Entwurfsmuster, die sich in keine der ersten fünf Abschnitte einordnen lassen. Die Liste ist nicht vollständig und überschneidet sich teilweise mit <a href="/wiki/Architekturmuster" title="Architekturmuster">Architekturmustern</a>.
</p>
<style data-mw-deduplicate="TemplateStyles:r197442811">.mw-parser-output .column-multiple,.mw-parser-output div[style*=column]{margin-top:0.3em}.mw-parser-output .column-multiple>ol,.mw-parser-output .column-multiple>ul,.mw-parser-output .column-multiple>p,.mw-parser-output div[style*=column]>ol,.mw-parser-output div[style*=column]>ul{margin-top:0}.mw-parser-output .column-multiple li,.mw-parser-output div[style*=column] li,.mw-parser-output .column-multiple-avoid{break-inside:avoid;break-inside:avoid-column;page-break-inside:avoid}.mw-parser-output .column-multiple-avoid-3{orphans:3;widows:3}</style><div class="column-multiple" style="column-width:30em;column-count:3;">
<p><b>1. Erzeugungsmuster</b> (<span style="font-style:normal;font-weight:normal"><a href="/wiki/Englische_Sprache" title="Englische Sprache">englisch</a></span> <span lang="en-Latn" style="font-style:italic"><i>creational patterns</i></span>)
</p>
<ul><li><a href="/wiki/Erbauer_(Entwurfsmuster)" title="Erbauer (Entwurfsmuster)">Erbauer</a> (<i>Builder</i>)<sup id="cite_ref-GoF_2-1" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Fabrikmethode" title="Fabrikmethode">Fabrikmethode</a> (<i>Factory method</i>)<sup id="cite_ref-GoF_2-2" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Multiton" title="Multiton">Multiton</a> (<i>Multiton</i>)</li>
<li><a href="/wiki/Prototyp_(Entwurfsmuster)" title="Prototyp (Entwurfsmuster)">Prototyp</a> (<i>Prototype</i>)<sup id="cite_ref-GoF_2-3" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li></ul>
<p><b>2. Strukturmuster</b> (<span style="font-style:normal;font-weight:normal"><a href="/wiki/Englische_Sprache" title="Englische Sprache">englisch</a></span> <span lang="en-Latn" style="font-style:italic"><i>structural design patterns</i></span>)
</p>
<ul><li><a href="/wiki/Container_(Entwurfsmuster)" title="Container (Entwurfsmuster)">Container</a> (<i>Container</i>)</li>
<li><a href="/wiki/Decorator" title="Decorator">Dekorierer</a> (<i>Decorator</i>)<sup id="cite_ref-GoF_2-4" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Fassade_(Entwurfsmuster)" title="Fassade (Entwurfsmuster)">Fassade</a> (<i>Facade</i>)<sup id="cite_ref-GoF_2-5" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Fliegengewicht_(Entwurfsmuster)" title="Fliegengewicht (Entwurfsmuster)">Fliegengewicht</a> (<i>Flyweight</i>)<sup id="cite_ref-GoF_2-6" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Kompositum_(Entwurfsmuster)" title="Kompositum (Entwurfsmuster)">Kompositum</a> (<i>Composite oder Whole-Part</i>)<sup id="cite_ref-GoF_2-7" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Stellvertreter_(Entwurfsmuster)" title="Stellvertreter (Entwurfsmuster)">Stellvertreter</a> (<i>Proxy</i>)<sup id="cite_ref-GoF_2-8" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/w/index.php?title=Half_Object_Plus_Protocol&amp;action=edit&amp;redlink=1" class="new" title="Half Object Plus Protocol (Seite nicht vorhanden)">Half Object Plus Protocol</a></li></ul>
<p><b>3. Verhaltensmuster </b> (<a href="/wiki/Englische_Sprache" title="Englische Sprache">englisch</a> <span lang="en"><i>behavioral design patterns</i></span>)
</p>
<ul><li><a href="/wiki/Interceptor_(Entwurfsmuster)" title="Interceptor (Entwurfsmuster)">Interceptor</a> (<i>Interceptor</i>)</li>
<li><a href="/wiki/Interpreter_(Entwurfsmuster)" title="Interpreter (Entwurfsmuster)">Interpreter</a> (<i>Interpreter</i>)<sup id="cite_ref-GoF_2-9" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Iterator_(Entwurfsmuster)" title="Iterator (Entwurfsmuster)">Iterator</a> (<i>Iterator</i>)<sup id="cite_ref-GoF_2-10" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Kommando_(Entwurfsmuster)" title="Kommando (Entwurfsmuster)">Kommando</a> (<i>Command</i>)<sup id="cite_ref-GoF_2-11" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Memento_(Entwurfsmuster)" title="Memento (Entwurfsmuster)">Memento</a> (<i>Memento</i>)<sup id="cite_ref-GoF_2-12" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Nullobjekt_(Entwurfsmuster)" title="Nullobjekt (Entwurfsmuster)">Nullobjekt</a> (<i>Null Object</i>)</li>
<li><a href="/wiki/Schablonenmethode" title="Schablonenmethode">Schablonenmethode</a> (<i>Template method</i>)<sup id="cite_ref-GoF_2-13" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Strategie_(Entwurfsmuster)" title="Strategie (Entwurfsmuster)">Strategie</a> (<i>Strategy</i>)<sup id="cite_ref-GoF_2-14" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Vermittler_(Entwurfsmuster)" title="Vermittler (Entwurfsmuster)">Vermittler</a> (<i>Mediator</i>)<sup id="cite_ref-GoF_2-15" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Zustand_(Entwurfsmuster)" title="Zustand (Entwurfsmuster)">Zustand</a> (<i>State</i>)<sup id="cite_ref-GoF_2-16" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/wiki/Zust%C3%A4ndigkeitskette" title="Zuständigkeitskette">Zuständigkeitskette</a> (<i>Chain of responsibility</i>)<sup id="cite_ref-GoF_2-17" class="reference"><a href="#cite_note-GoF-2">&#91;2&#93;</a></sup></li>
<li><a href="/w/index.php?title=State/Event&amp;action=edit&amp;redlink=1" class="new" title="State/Event (Seite nicht vorhanden)">State/Event</a><sup id="cite_ref-Sierra_5-1" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup></li>
<li><a href="/w/index.php?title=Consequences&amp;action=edit&amp;redlink=1" class="new" title="Consequences (Seite nicht vorhanden)">Consequences</a><sup id="cite_ref-Sierra_5-2" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup></li>
<li><a href="/w/index.php?title=Accumulator&amp;action=edit&amp;redlink=1" class="new" title="Accumulator (Seite nicht vorhanden)">Accumulator</a><sup id="cite_ref-Sierra_5-3" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup></li>
<li><a href="/wiki/MapReduce" title="MapReduce">MapReduce</a><sup id="cite_ref-Sierra_5-4" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup></li>
<li><a href="/w/index.php?title=Reduce/Combine&amp;action=edit&amp;redlink=1" class="new" title="Reduce/Combine (Seite nicht vorhanden)">Reduce/Combine</a><sup id="cite_ref-Sierra_5-5" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup></li>
<li><a href="/w/index.php?title=Rekursive_Erweiterung&amp;action=edit&amp;redlink=1" class="new" title="Rekursive Erweiterung (Seite nicht vorhanden)">Rekursive Erweiterung</a><sup id="cite_ref-Sierra_5-6" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup></li>
<li><a href="/wiki/Software_Pipelining" title="Software Pipelining">Software Pipelining</a><sup id="cite_ref-Sierra_5-7" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup></li>
<li><a href="/w/index.php?title=Prozess_Wrapper&amp;action=edit&amp;redlink=1" class="new" title="Prozess Wrapper (Seite nicht vorhanden)">Prozess Wrapper</a><sup id="cite_ref-Sierra_5-8" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup></li>
<li><a href="/w/index.php?title=Software-Token&amp;action=edit&amp;redlink=1" class="new" title="Software-Token (Seite nicht vorhanden)">Token</a><sup id="cite_ref-Sierra_5-9" class="reference"><a href="#cite_note-Sierra-5">&#91;5&#93;</a></sup></li>
<li><a href="/w/index.php?title=Page_Object&amp;action=edit&amp;redlink=1" class="new" title="Page Object (Seite nicht vorhanden)">Page Object</a></li></ul>
<p><b>4. Muster für <a href="/wiki/Objektrelationale_Abbildung" title="Objektrelationale Abbildung">objektrelationale Abbildung</a></b>
</p>
<ul><li><a href="/wiki/Transferobjekt" title="Transferobjekt">Datentransferobjekt</a> (<i>Data transfer object</i>)</li>
<li><a href="/w/index.php?title=Table_Data_Gateway&amp;action=edit&amp;redlink=1" class="new" title="Table Data Gateway (Seite nicht vorhanden)">Table Data Gateway</a><sup id="cite_ref-PoEAA_3-2" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/w/index.php?title=Row_Data_Gateway&amp;action=edit&amp;redlink=1" class="new" title="Row Data Gateway (Seite nicht vorhanden)">Row Data Gateway</a><sup id="cite_ref-PoEAA_3-3" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/wiki/Active_Record" title="Active Record">Active Record</a><sup id="cite_ref-PoEAA_3-4" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/wiki/Unit_of_Work" title="Unit of Work">Unit of Work</a><sup id="cite_ref-PoEAA_3-5" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/w/index.php?title=Identity_Map&amp;action=edit&amp;redlink=1" class="new" title="Identity Map (Seite nicht vorhanden)">Identity Map</a><sup id="cite_ref-PoEAA_3-6" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/wiki/Lazy_Loading" title="Lazy Loading">Lazy Loading</a><sup id="cite_ref-PoEAA_3-7" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/w/index.php?title=Identity_Field&amp;action=edit&amp;redlink=1" class="new" title="Identity Field (Seite nicht vorhanden)">Identity Field</a><sup id="cite_ref-PoEAA_3-8" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/w/index.php?title=Dependent_Mapping&amp;action=edit&amp;redlink=1" class="new" title="Dependent Mapping (Seite nicht vorhanden)">Dependent Mapping</a><sup id="cite_ref-PoEAA_3-9" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/w/index.php?title=Embedded_Value_(Entwurfsmuster)&amp;action=edit&amp;redlink=1" class="new" title="Embedded Value (Entwurfsmuster) (Seite nicht vorhanden)">Embedded Value</a><sup id="cite_ref-PoEAA_3-10" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/w/index.php?title=Serialized_LOB&amp;action=edit&amp;redlink=1" class="new" title="Serialized LOB (Seite nicht vorhanden)">Serialized LOB</a><sup id="cite_ref-PoEAA_3-11" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/w/index.php?title=Inheritance_Mapper&amp;action=edit&amp;redlink=1" class="new" title="Inheritance Mapper (Seite nicht vorhanden)">Inheritance Mapper</a><sup id="cite_ref-PoEAA_3-12" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/w/index.php?title=Metadata_Mapping&amp;action=edit&amp;redlink=1" class="new" title="Metadata Mapping (Seite nicht vorhanden)">Metadata Mapping</a><sup id="cite_ref-PoEAA_3-13" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/w/index.php?title=Query_Object&amp;action=edit&amp;redlink=1" class="new" title="Query Object (Seite nicht vorhanden)">Query Object</a><sup id="cite_ref-PoEAA_3-14" class="reference"><a href="#cite_note-PoEAA-3">&#91;3&#93;</a></sup></li>
<li><a href="/wiki/Command-Query-Responsibility-Segregation" title="Command-Query-Responsibility-Segregation">Command-Query-Responsibility-Segregation</a></li></ul>
<p><b>5. Nachrichtenübermittlungsmuster</b> (<i><span lang="en">Messaging Patterns</span></i>)
</p>
<ul><li><a href="/w/index.php?title=Messaging_Mapper&amp;action=edit&amp;redlink=1" class="new" title="Messaging Mapper (Seite nicht vorhanden)">Messaging Mapper</a></li>
<li><a href="/w/index.php?title=Transactional_Client&amp;action=edit&amp;redlink=1" class="new" title="Transactional Client (Seite nicht vorhanden)">Transactional Client</a></li>
<li><a href="/w/index.php?title=Polling_Consumer&amp;action=edit&amp;redlink=1" class="new" title="Polling Consumer (Seite nicht vorhanden)">Polling Consumer</a></li>
<li><a href="/w/index.php?title=Event-driven_Consumer&amp;action=edit&amp;redlink=1" class="new" title="Event-driven Consumer (Seite nicht vorhanden)">Event-driven Consumer</a></li>
<li><a href="/w/index.php?title=Competing_Consumers&amp;action=edit&amp;redlink=1" class="new" title="Competing Consumers (Seite nicht vorhanden)">Competing Consumers</a></li>
<li><a href="/w/index.php?title=Message_Dispatcher&amp;action=edit&amp;redlink=1" class="new" title="Message Dispatcher (Seite nicht vorhanden)">Message Dispatcher</a></li>
<li><a href="/w/index.php?title=Selective_Consumer&amp;action=edit&amp;redlink=1" class="new" title="Selective Consumer (Seite nicht vorhanden)">Selective Consumer</a></li>
<li><a href="/w/index.php?title=Durable_Subscriber&amp;action=edit&amp;redlink=1" class="new" title="Durable Subscriber (Seite nicht vorhanden)">Durable Subscriber</a></li>
<li><a href="/w/index.php?title=Idempotent_Receiver&amp;action=edit&amp;redlink=1" class="new" title="Idempotent Receiver (Seite nicht vorhanden)">Idempotent Receiver</a></li>
<li><a href="/w/index.php?title=Service_Activator&amp;action=edit&amp;redlink=1" class="new" title="Service Activator (Seite nicht vorhanden)">Service Activator</a></li>
<li><a href="/wiki/Message_(Entwurfsmuster)" title="Message (Entwurfsmuster)">Message</a></li>
<li><a href="/w/index.php?title=Command_Message&amp;action=edit&amp;redlink=1" class="new" title="Command Message (Seite nicht vorhanden)">Command Message</a></li>
<li><a href="/wiki/Document_Message" title="Document Message">Document Message</a></li>
<li><a href="/w/index.php?title=Event_Message&amp;action=edit&amp;redlink=1" class="new" title="Event Message (Seite nicht vorhanden)">Event Message</a></li>
<li><a href="/w/index.php?title=Request-Reply&amp;action=edit&amp;redlink=1" class="new" title="Request-Reply (Seite nicht vorhanden)">Request-Reply</a></li>
<li><a href="/w/index.php?title=Return_Address&amp;action=edit&amp;redlink=1" class="new" title="Return Address (Seite nicht vorhanden)">Return Address</a></li>
<li><a href="/w/index.php?title=Correlation_Identifier&amp;action=edit&amp;redlink=1" class="new" title="Correlation Identifier (Seite nicht vorhanden)">Correlation Identifier</a></li>
<li><a href="/w/index.php?title=Message_Sequence&amp;action=edit&amp;redlink=1" class="new" title="Message Sequence (Seite nicht vorhanden)">Message Sequence</a></li>
<li><a href="/w/index.php?title=Message_Expiration&amp;action=edit&amp;redlink=1" class="new" title="Message Expiration (Seite nicht vorhanden)">Message Expiration</a></li>
<li><a href="/w/index.php?title=Format_Indicator&amp;action=edit&amp;redlink=1" class="new" title="Format Indicator (Seite nicht vorhanden)">Format Indicator</a></li>
<li><a href="/w/index.php?title=Message_Channel&amp;action=edit&amp;redlink=1" class="new" title="Message Channel (Seite nicht vorhanden)">Message Channel</a></li>
<li><a href="/w/index.php?title=Point-to-Point_Channel&amp;action=edit&amp;redlink=1" class="new" title="Point-to-Point Channel (Seite nicht vorhanden)">Point-to-Point Channel</a></li>
<li><a href="/w/index.php?title=Publisher-Subscriber_Channel&amp;action=edit&amp;redlink=1" class="new" title="Publisher-Subscriber Channel (Seite nicht vorhanden)">Publisher-Subscriber Channel</a></li>
<li><a href="/w/index.php?title=Datatype_Channel&amp;action=edit&amp;redlink=1" class="new" title="Datatype Channel (Seite nicht vorhanden)">Datatype Channel</a></li>
<li><a href="/w/index.php?title=Invalid_Message_Channel&amp;action=edit&amp;redlink=1" class="new" title="Invalid Message Channel (Seite nicht vorhanden)">Invalid Message Channel</a></li>
<li><a href="/w/index.php?title=Dead_Letter_Channel&amp;action=edit&amp;redlink=1" class="new" title="Dead Letter Channel (Seite nicht vorhanden)">Dead Letter Channel</a></li>
<li><a href="/w/index.php?title=Guaranteed_Delivery&amp;action=edit&amp;redlink=1" class="new" title="Guaranteed Delivery (Seite nicht vorhanden)">Guaranteed Delivery</a></li>
<li><a href="/w/index.php?title=Channel_Adapter&amp;action=edit&amp;redlink=1" class="new" title="Channel Adapter (Seite nicht vorhanden)">Channel Adapter</a></li>
<li><a href="/w/index.php?title=Messaging_Bridge&amp;action=edit&amp;redlink=1" class="new" title="Messaging Bridge (Seite nicht vorhanden)">Messaging Bridge</a></li>
<li>Message Bus</li>
<li><a href="/w/index.php?title=Pipes-and-Filters&amp;action=edit&amp;redlink=1" class="new" title="Pipes-and-Filters (Seite nicht vorhanden)">Pipes-and-Filters</a></li>
<li><a href="/w/index.php?title=Message_Router&amp;action=edit&amp;redlink=1" class="new" title="Message Router (Seite nicht vorhanden)">Message Router</a></li>
<li><a href="/w/index.php?title=Content-based_Router&amp;action=edit&amp;redlink=1" class="new" title="Content-based Router (Seite nicht vorhanden)">Content-based Router</a></li>
<li><a href="/w/index.php?title=Message_Filter&amp;action=edit&amp;redlink=1" class="new" title="Message Filter (Seite nicht vorhanden)">Message Filter</a></li>
<li><a href="/w/index.php?title=Dynamic_Router&amp;action=edit&amp;redlink=1" class="new" title="Dynamic Router (Seite nicht vorhanden)">Dynamic Router</a></li>
<li><a href="/w/index.php?title=Recipient_List&amp;action=edit&amp;redlink=1" class="new" title="Recipient List (Seite nicht vorhanden)">Recipient List</a></li>
<li>Splitter</li>
<li><a href="/wiki/Aggregator" title="Aggregator">Aggregator</a></li>
<li><a href="/w/index.php?title=Resequencer&amp;action=edit&amp;redlink=1" class="new" title="Resequencer (Seite nicht vorhanden)">Resequencer</a></li>
<li><a href="/w/index.php?title=Composed_Message_Processor&amp;action=edit&amp;redlink=1" class="new" title="Composed Message Processor (Seite nicht vorhanden)">Composed Message Processor</a></li>
<li><a href="/w/index.php?title=Scatter-Gather&amp;action=edit&amp;redlink=1" class="new" title="Scatter-Gather (Seite nicht vorhanden)">Scatter-Gather</a></li>
<li><a href="/w/index.php?title=Routing_Slip&amp;action=edit&amp;redlink=1" class="new" title="Routing Slip (Seite nicht vorhanden)">Routing Slip</a></li>
<li><a href="/w/index.php?title=Process_Manager&amp;action=edit&amp;redlink=1" class="new" title="Process Manager (Seite nicht vorhanden)">Process Manager</a></li>
<li><a href="/w/index.php?title=Message_Broker&amp;action=edit&amp;redlink=1" class="new" title="Message Broker (Seite nicht vorhanden)">Message Broker</a></li>
<li><a href="/w/index.php?title=Message_Translator&amp;action=edit&amp;redlink=1" class="new" title="Message Translator (Seite nicht vorhanden)">Message Translator</a></li>
<li><a href="/w/index.php?title=Envelope_Wrapper&amp;action=edit&amp;redlink=1" class="new" title="Envelope Wrapper (Seite nicht vorhanden)">Envelope Wrapper</a></li>
<li><a href="/w/index.php?title=Content_Enricher&amp;action=edit&amp;redlink=1" class="new" title="Content Enricher (Seite nicht vorhanden)">Content Enricher</a></li>
<li><a href="/w/index.php?title=Content_Filter&amp;action=edit&amp;redlink=1" class="new" title="Content Filter (Seite nicht vorhanden)">Content Filter</a></li>
<li><a href="/w/index.php?title=Claim_Check&amp;action=edit&amp;redlink=1" class="new" title="Claim Check (Seite nicht vorhanden)">Claim Check</a></li>
<li><a href="/w/index.php?title=Normalizer&amp;action=edit&amp;redlink=1" class="new" title="Normalizer (Seite nicht vorhanden)">Normalizer</a></li>
<li><a href="/w/index.php?title=Canonical_Data_Model&amp;action=edit&amp;redlink=1" class="new" title="Canonical Data Model (Seite nicht vorhanden)">Canonical Data Model</a></li>
<li><a href="/w/index.php?title=Control_Bus&amp;action=edit&amp;redlink=1" class="new" title="Control Bus (Seite nicht vorhanden)">Control Bus</a></li>
<li>Detour</li>
<li><a href="/w/index.php?title=Wire_Tap&amp;action=edit&amp;redlink=1" class="new" title="Wire Tap (Seite nicht vorhanden)">Wire Tap</a></li>
<li><a href="/w/index.php?title=Message_History&amp;action=edit&amp;redlink=1" class="new" title="Message History (Seite nicht vorhanden)">Message History</a></li>
<li><a href="/wiki/Message_Store" title="Message Store">Message Store</a></li>
<li><a href="/wiki/Smart_Proxy" title="Smart Proxy">Smart Proxy</a></li>
<li><a href="/w/index.php?title=Test_Message&amp;action=edit&amp;redlink=1" class="new" title="Test Message (Seite nicht vorhanden)">Test Message</a></li>
<li><a href="/w/index.php?title=Channel_Purger&amp;action=edit&amp;redlink=1" class="new" title="Channel Purger (Seite nicht vorhanden)">Channel Purger</a></li></ul>
<p><b>6. Weitere Muster</b>
</p>
<ul><li><a href="/wiki/Extension_Interface" title="Extension Interface">Extension Interface</a></li>
<li><a href="/wiki/Fluent_Interface" title="Fluent Interface">Fluent Interface</a></li>
<li><a href="/wiki/Inversion_of_Control" title="Inversion of Control">Inversion of Control</a></li>
<li><a href="/w/index.php?title=Transaction_Script&amp;action=edit&amp;redlink=1" class="new" title="Transaction Script (Seite nicht vorhanden)">Transaction Script</a></li>
<li><a href="/w/index.php?title=Table_Module&amp;action=edit&amp;redlink=1" class="new" title="Table Module (Seite nicht vorhanden)">Table Module</a></li>
<li><a href="/w/index.php?title=Page_Controller&amp;action=edit&amp;redlink=1" class="new" title="Page Controller (Seite nicht vorhanden)">Page Controller</a></li>
<li><a href="/w/index.php?title=Template_View&amp;action=edit&amp;redlink=1" class="new" title="Template View (Seite nicht vorhanden)">Template View</a></li>
<li><a href="/w/index.php?title=Transform_View&amp;action=edit&amp;redlink=1" class="new" title="Transform View (Seite nicht vorhanden)">Transform View</a></li>
<li><a href="/w/index.php?title=Two-Step_View&amp;action=edit&amp;redlink=1" class="new" title="Two-Step View (Seite nicht vorhanden)">Two-Step View</a></li>
<li><a href="/w/index.php?title=Application_Controller&amp;action=edit&amp;redlink=1" class="new" title="Application Controller (Seite nicht vorhanden)">Application Controller</a></li>
<li><a href="/w/index.php?title=Remote_Facade&amp;action=edit&amp;redlink=1" class="new" title="Remote Facade (Seite nicht vorhanden)">Remote Facade</a></li>
<li><a href="/wiki/Lock" title="Lock">Locks</a></li>
<li><a href="/w/index.php?title=Session_State&amp;action=edit&amp;redlink=1" class="new" title="Session State (Seite nicht vorhanden)">Session States</a></li>
<li><a href="/wiki/Repository_(Entwurfsmuster)" title="Repository (Entwurfsmuster)">Repository</a></li>
<li><a href="/wiki/Value_Object" title="Value Object">Value Object</a></li>
<li><a href="/wiki/Registry_(Entwurfsmuster)" title="Registry (Entwurfsmuster)">Registry</a></li></ul>
</div>
<h2><span class="mw-headline" id="Andere_Arten_von_Mustern">Andere Arten von Mustern</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=7" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Andere Arten von Mustern">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=7" title="Abschnitt bearbeiten: Andere Arten von Mustern">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<p>Die Arbeiten der <a href="/wiki/Entwurfsmuster_(Buch)" title="Entwurfsmuster (Buch)">Gang of Four</a> haben viele Autoren zu weiteren Veröffentlichungen angeregt. Daraus entstand auch die Problematik, dass ein Muster sich nicht mehr ohne weiteres als Entwurfsmuster klassifizieren lässt. Vielmehr gibt es graduelle Unterschiede in der <a href="/w/index.php?title=Software-Granularit%C3%A4t&amp;action=edit&amp;redlink=1" class="new" title="Software-Granularität (Seite nicht vorhanden)">Granularität</a> von Mustern. So wird etwa das <a href="/wiki/Model_View_Controller" title="Model View Controller">Model-View-Controller</a>-Muster (MVC) manchmal als <a href="/wiki/Architekturmuster" title="Architekturmuster">Architekturmuster</a>, manchmal als Entwurfsmuster eingesetzt.<sup id="cite_ref-7" class="reference"><a href="#cite_note-7">&#91;7&#93;</a></sup>
</p><p>Beispiele für <a href="/wiki/Muster" title="Muster">Muster</a>, die keine Entwurfsmuster sind:
</p>
<ul><li><a href="/wiki/Analysemuster" title="Analysemuster">Analysemuster</a> charakterisieren typische Fälle der <a href="/wiki/Anforderungserhebung" class="mw-redirect" title="Anforderungserhebung">Anforderungsanalyse</a>.</li>
<li><a href="/wiki/Architekturmuster" title="Architekturmuster">Architekturmuster</a> beschreiben typische <a href="/wiki/Softwarearchitektur" title="Softwarearchitektur">Softwarearchitekturen</a>.</li>
<li><a href="/wiki/Idiom_(Softwaretechnik)" title="Idiom (Softwaretechnik)">Idiome</a> sind unterhalb der Ebene des Entwurfs bei der Programmierung auftretende Muster.</li>
<li>Kommunikationsmuster beziehen sich auf die Kommunikationswege zwischen Personen einer Organisation.</li>
<li><a href="/wiki/Organisationsmuster" title="Organisationsmuster">Organisationsmuster</a> beschreiben Elemente der Strukturen von Organisationen.</li>
<li><a href="/wiki/Anti-Pattern" title="Anti-Pattern">Antimuster</a> beschreiben, „wie man es <i>nicht</i> machen sollte.“</li>
<li><a href="/wiki/Integrationsmuster" title="Integrationsmuster">Integrationsmuster</a> beschreiben die Kommunikation zwischen unterschiedlichen Systemen, bzw. zwischen Komponenten innerhalb eines Systems.</li>
<li><a href="/wiki/SOA-Muster" title="SOA-Muster">SOA-Muster</a> beschreiben den Aufbau <a href="/wiki/Serviceorientierte_Architektur" title="Serviceorientierte Architektur">serviceorientierter Architekturen</a>.</li></ul>
<h2><span class="mw-headline" id="Antimuster">Antimuster</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=8" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Antimuster">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=8" title="Abschnitt bearbeiten: Antimuster">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<div class="hauptartikel" role="navigation"><span class="hauptartikel-pfeil" title="siehe" aria-hidden="true" role="presentation">→ </span><i><span class="hauptartikel-text">Hauptartikel</span>: <a href="/wiki/Anti-Pattern" title="Anti-Pattern">Anti-Pattern</a></i></div>
<p>Wo Entwurfsmuster in der Software-Entwicklung allgemein übliche und bekannte Lösungsansätze sind, um Probleme zu lösen, so sind Antimuster Negativ-Beispiele von bereits durchgeführten Lösungen, die Hinweise darauf geben, welche Fehler vermieden werden sollten.
</p><p>Nachdem bei der Softwareentwicklung immer mehr von positiven Erfahrungen von erfolgreich abgeschlossenen Aufgabenstellungen profitiert wurde, konzentrierte man sich auch darauf, die Negativbeispiele, also wiederkehrende Fehler bei der Software-Entwicklung, zu identifizieren und zu dokumentieren.
</p>
<h2><span class="mw-headline" id="Siehe_auch">Siehe auch</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=9" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Siehe auch">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=9" title="Abschnitt bearbeiten: Siehe auch">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<ul><li><a href="/wiki/Smart_UI" title="Smart UI">Smart UI</a></li>
<li><a href="/wiki/Wiki#Das_WikiWikiWeb" title="Wiki">Entwurfsmuster und die Entstehung des Wikis</a></li>
<li><a href="/wiki/Objektorientierte_Programmierung" title="Objektorientierte Programmierung">Objektorientierte Programmierung</a></li>
<li><a href="/wiki/Plugin_(Entwurfsmuster)" title="Plugin (Entwurfsmuster)">Plugin (Entwurfsmuster)</a></li>
<li><a href="/wiki/Prinzipien_objektorientierten_Designs" title="Prinzipien objektorientierten Designs">Prinzipien objektorientierten Designs</a></li>
<li><a href="/wiki/Prototyp_(Technik)" title="Prototyp (Technik)">Prototyp (Technik)</a></li>
<li><a href="/wiki/Referenzmodell" title="Referenzmodell">Referenzmodell</a></li>
<li><a href="/wiki/Referenzarchitektur" title="Referenzarchitektur">Referenzarchitektur</a></li></ul>
<h2><span class="mw-headline" id="Literatur">Literatur</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=10" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Literatur">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=10" title="Abschnitt bearbeiten: Literatur">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<dl><dt>Deutsch</dt></dl>
<ul><li>Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, <a href="/wiki/Michael_Stal" title="Michael Stal">Michael Stal</a>: <i>Pattern-orientierte Softwarearchitektur. Ein Pattern-System.</i> Addison-Wesley-Longman, Bonn 1998, <a href="/wiki/Spezial:ISBN-Suche/3827312825" class="internal mw-magiclink-isbn">ISBN 3-8273-1282-5</a>.</li>
<li>Helmut Leitner: <i>Mustertheorie Einführung und Perspektiven auf den Spuren von Christopher Alexander</i>. Verlag Nausner &amp; Nausner, Graz 2007, <a href="/wiki/Spezial:ISBN-Suche/9783901402500" class="internal mw-magiclink-isbn">ISBN 978-3-901402-50-0</a>.</li>
<li>Florian Siebler: <i>Design Patterns mit Java: Eine Einführung in Entwurfsmuster.</i> Hanser-Verlag, 2014, <a href="/wiki/Spezial:ISBN-Suche/9783446436169" class="internal mw-magiclink-isbn">ISBN 978-3-446-43616-9</a>.</li></ul>
<dl><dt>Englisch</dt></dl>
<ul><li><a href="/wiki/Erich_Gamma" title="Erich Gamma">Erich Gamma</a>, <a href="/wiki/Richard_Helm" title="Richard Helm">Richard Helm</a>, <a href="/wiki/Ralph_Johnson" title="Ralph Johnson">Ralph E. Johnson</a>, <a href="/wiki/John_Vlissides" title="John Vlissides">John Vlissides</a>&#58; <cite style="font-style:italic"><a href="/wiki/Entwurfsmuster_(Buch)" title="Entwurfsmuster (Buch)">Entwurfsmuster. Elemente wiederverwendbarer objektorientierter Software</a></cite>. Addison-Wesley, München 2004, <a href="/wiki/Spezial:ISBN-Suche/3827321999" class="internal mw-magiclink-isbn">ISBN 3-8273-2199-9</a> (englisch: <cite class="lang" lang="en" dir="auto" style="font-style:italic">Design Patterns. Elements of Reusable Object-Oriented Software.</cite>).<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info:sid/de.wikipedia.org:Entwurfsmuster&amp;rft.au=Erich+Gamma%2C+Richard+Helm%2C+Ralph+E.+Johnson%2C+...&amp;rft.btitle=Entwurfsmuster.+Elemente+wiederverwendbarer+objektorientierter+Software&amp;rft.date=2004&amp;rft.genre=book&amp;rft.isbn=3827321999&amp;rft.place=M%C3%BCnchen&amp;rft.pub=Addison-Wesley" style="display:none">&#160;</span></li>
<li><a href="/w/index.php?title=Gregor_Hohpe&amp;action=edit&amp;redlink=1" class="new" title="Gregor Hohpe (Seite nicht vorhanden)">Gregor Hohpe</a>, <a href="/w/index.php?title=Bobby_Woolf&amp;action=edit&amp;redlink=1" class="new" title="Bobby Woolf (Seite nicht vorhanden)">Bobby Woolf</a>&#58; <cite class="lang" lang="en" dir="auto" style="font-style:italic">Enterprise Integration Patterns</cite>. Designing, Building and Deploying Messaging Solutions. Hrsg.: Addison-Wesley. 1. Auflage. Addison-Wesley, 2003, <a href="/wiki/Spezial:ISBN-Suche/9780321200686" class="internal mw-magiclink-isbn">ISBN 978-0-321-20068-6</a> (englisch, 480&#160;S.).<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info:sid/de.wikipedia.org:Entwurfsmuster&amp;rft.au=Gregor+Hohpe%2C+Bobby+Woolf&amp;rft.btitle=Enterprise+Integration+Patterns&amp;rft.date=2003&amp;rft.edition=1&amp;rft.genre=book&amp;rft.isbn=9780321200686&amp;rft.pub=Addison-Wesley" style="display:none">&#160;</span></li>
<li><a href="/wiki/Wolfgang_Pree" title="Wolfgang Pree">Wolfgang Pree</a>: <i>Design Patterns for Object-Oriented Software Development.</i> Addison-Wesley, ACM Press, 1994, <a href="/wiki/Spezial:ISBN-Suche/0201422948" class="internal mw-magiclink-isbn">ISBN 0-201-42294-8</a>. (englisch)</li>
<li><a href="/wiki/Martin_Fowler" title="Martin Fowler">Martin Fowler</a>: <i>Patterns of Enterprise Application Architecture.</i> Addison-Wesley, 2002, <a href="/wiki/Spezial:ISBN-Suche/0321127420" class="internal mw-magiclink-isbn">ISBN 0-321-12742-0</a>. (englisch)</li>
<li>Deepak Alur, John Cupri, Dan Malks&#58; <cite style="font-style:italic">Core J2EE Patterns: Best Practices and Design Strategies</cite>. Prentice Hall, 2003, <a href="/wiki/Spezial:ISBN-Suche/9780131422469" class="internal mw-magiclink-isbn">ISBN 978-0-13-142246-9</a>, <span style="white-space:nowrap">S.<span style="display:inline-block;width:.2em">&#160;</span>528</span> (<a rel="nofollow" class="external text" href="http://www.oracle.com/technetwork/java/index-138725.html">oracle.com</a> &#91;abgerufen am 22.&#160;November 2009&#93;).<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info:sid/de.wikipedia.org:Entwurfsmuster&amp;rft.au=Deepak+Alur%2C+John+Cupri%2C+Dan+Malks&amp;rft.btitle=Core+J2EE+Patterns%3A+Best+Practices+and+Design+Strategies&amp;rft.date=2003&amp;rft.genre=book&amp;rft.isbn=9780131422469&amp;rft.pages=528&amp;rft.pub=Prentice+Hall" style="display:none">&#160;</span> (englisch)</li>
<li>Eric Freeman, Elisabeth Freeman: <i>Head First Design Patterns.</i> OReilly, 2004, <a href="/wiki/Spezial:ISBN-Suche/0596007124" class="internal mw-magiclink-isbn">ISBN 0-596-00712-4</a>. (Deutsche Übersetzung: <i>Entwurfsmuster von Kopf bis Fuß.</i> OReilly, Köln 2006, <a href="/wiki/Spezial:ISBN-Suche/3897214210" class="internal mw-magiclink-isbn">ISBN 3-89721-421-0</a>.)</li>
<li>Joshua Kerievsky&#58; <cite style="font-style:italic">Refactoring To Patterns</cite>. Addison-Wesley, 2004, <a href="/wiki/Spezial:ISBN-Suche/0321213351" class="internal mw-magiclink-isbn">ISBN 0-321-21335-1</a>, <span style="white-space:nowrap">S.<span style="display:inline-block;width:.2em">&#160;</span>400</span> (<a rel="nofollow" class="external text" href="http://www.industriallogic.com/xp/refactoring/catalog.html">Katalog der Patterns</a> &#91;abgerufen am 22.&#160;November 2009&#93;).<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info:sid/de.wikipedia.org:Entwurfsmuster&amp;rft.au=Joshua+Kerievsky&amp;rft.btitle=Refactoring+To+Patterns&amp;rft.date=2004&amp;rft.genre=book&amp;rft.isbn=0321213351&amp;rft.pages=400&amp;rft.pub=Addison-Wesley" style="display:none">&#160;</span> (englisch)</li></ul>
<h2><span class="mw-headline" id="Weblinks">Weblinks</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=11" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Weblinks">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=11" title="Abschnitt bearbeiten: Weblinks">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<div class="sisterproject" style="margin:0.1em 0 0 0;"><div class="noviewer" style="display:inline-block; line-height:10px; min-width:1.6em; text-align:center;" aria-hidden="true" role="presentation"><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/f/fa/Wikibooks-logo.svg/16px-Wikibooks-logo.svg.png" decoding="async" title="Wikibooks" width="16" height="16" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/f/fa/Wikibooks-logo.svg/24px-Wikibooks-logo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/f/fa/Wikibooks-logo.svg/32px-Wikibooks-logo.svg.png 2x" data-file-width="300" data-file-height="300" /></div><b><a href="https://de.wikibooks.org/wiki/Muster" class="extiw" title="b:Muster">Wikibooks: Entwurfsmuster</a></b>&#160; Lern- und Lehrmaterialien</div>
<ul><li><a rel="nofollow" class="external text" href="http://wwwswt.informatik.uni-rostock.de/deutsch/Infothek/Entwurfsmuster/patterns/index.html">Entwurfsmuster Übersicht</a></li>
<li><a rel="nofollow" class="external text" href="http://www.philipphauer.de/study/se/design-pattern.php">Design Pattern Katalog</a> mit 10 gängigen Entwurfsmustern</li>
<li><a rel="nofollow" class="external text" href="http://c2.com/cgi/wiki?WikiPagesAboutWhatArePatterns"><i>Wiki Pages About What Are Patterns</i>.</a> <a href="/wiki/Portland_Pattern_Repository" title="Portland Pattern Repository">Portland Pattern Repository</a>; Einstiegsseite (englisch)</li>
<li><span class="cite">Addy Osmani:&#32;<a rel="nofollow" class="external text" href="http://addyosmani.com/resources/essentialjsdesignpatterns/book/"><i>Learning JavaScript Design Patterns.</i></a><span class="Abrufdatum">&#32;Abgerufen am 24.&#160;Mai 2013</span>&#32;(englisch,&#32;Entwurfsmuster in <a href="/wiki/JavaScript" title="JavaScript">JavaScript</a>).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fde.wikipedia.org%3AEntwurfsmuster&amp;rft.title=Learning+JavaScript+Design+Patterns&amp;rft.description=Learning+JavaScript+Design+Patterns&amp;rft.identifier=http%3A%2F%2Faddyosmani.com%2Fresources%2Fessentialjsdesignpatterns%2Fbook%2F&amp;rft.creator=Addy+Osmani&amp;rft.language=en">&#160;</span></li>
<li><a rel="nofollow" class="external text" href="http://www.cs.helsinki.fi/u/salaakso/patterns/">User Interface Design Patterns</a></li></ul>
<h2><span class="mw-headline" id="Einzelnachweise">Einzelnachweise</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit&amp;section=12" class="mw-editsection-visualeditor" title="Abschnitt bearbeiten: Einzelnachweise">Bearbeiten</a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit&amp;section=12" title="Abschnitt bearbeiten: Einzelnachweise">Quelltext bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2>
<ol class="references">
<li id="cite_note-Zeller-1"><span class="mw-cite-backlink"><a href="#cite_ref-Zeller_1-0">↑</a></span> <span class="reference-text">
Andreas Zeller: <a rel="nofollow" class="external text" href="https://www.st.cs.uni-saarland.de/edu/einst/06-patterns.pdf"><i>Entwurfsmuster</i></a> auf st.cs.uni-saarland.de (PDF, S. 2.)</span>
</li>
<li id="cite_note-GoF-2"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-GoF_2-0">a</a></sup> <sup><a href="#cite_ref-GoF_2-1">b</a></sup> <sup><a href="#cite_ref-GoF_2-2">c</a></sup> <sup><a href="#cite_ref-GoF_2-3">d</a></sup> <sup><a href="#cite_ref-GoF_2-4">e</a></sup> <sup><a href="#cite_ref-GoF_2-5">f</a></sup> <sup><a href="#cite_ref-GoF_2-6">g</a></sup> <sup><a href="#cite_ref-GoF_2-7">h</a></sup> <sup><a href="#cite_ref-GoF_2-8">i</a></sup> <sup><a href="#cite_ref-GoF_2-9">j</a></sup> <sup><a href="#cite_ref-GoF_2-10">k</a></sup> <sup><a href="#cite_ref-GoF_2-11">l</a></sup> <sup><a href="#cite_ref-GoF_2-12">m</a></sup> <sup><a href="#cite_ref-GoF_2-13">n</a></sup> <sup><a href="#cite_ref-GoF_2-14">o</a></sup> <sup><a href="#cite_ref-GoF_2-15">p</a></sup> <sup><a href="#cite_ref-GoF_2-16">q</a></sup> <sup><a href="#cite_ref-GoF_2-17">r</a></sup></span> <span class="reference-text">
<a href="/wiki/Erich_Gamma" title="Erich Gamma">Erich Gamma</a>, <a href="/wiki/Richard_Helm" title="Richard Helm">Richard Helm</a>, <a href="/wiki/Ralph_Johnson" title="Ralph Johnson">Ralph E. Johnson</a>, <a href="/wiki/John_Vlissides" title="John Vlissides">John Vlissides</a>&#58; <cite style="font-style:italic">Entwurfsmuster. Elemente wiederverwendbarer objektorientierter Software</cite>. Addison-Wesley, München 2004, <a href="/wiki/Spezial:ISBN-Suche/3827321999" class="internal mw-magiclink-isbn">ISBN 3-8273-2199-9</a> (englisch: <cite class="lang" lang="en" dir="auto" style="font-style:italic">Design Patterns. Elements of Reusable Object-Oriented Software.</cite>).<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info:sid/de.wikipedia.org:Entwurfsmuster&amp;rft.au=Erich+Gamma%2C+Richard+Helm%2C+Ralph+E.+Johnson%2C+...&amp;rft.btitle=Entwurfsmuster.+Elemente+wiederverwendbarer+objektorientierter+Software&amp;rft.date=2004&amp;rft.genre=book&amp;rft.isbn=3827321999&amp;rft.place=M%C3%BCnchen&amp;rft.pub=Addison-Wesley" style="display:none">&#160;</span></span>
</li>
<li id="cite_note-PoEAA-3"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-PoEAA_3-0">a</a></sup> <sup><a href="#cite_ref-PoEAA_3-1">b</a></sup> <sup><a href="#cite_ref-PoEAA_3-2">c</a></sup> <sup><a href="#cite_ref-PoEAA_3-3">d</a></sup> <sup><a href="#cite_ref-PoEAA_3-4">e</a></sup> <sup><a href="#cite_ref-PoEAA_3-5">f</a></sup> <sup><a href="#cite_ref-PoEAA_3-6">g</a></sup> <sup><a href="#cite_ref-PoEAA_3-7">h</a></sup> <sup><a href="#cite_ref-PoEAA_3-8">i</a></sup> <sup><a href="#cite_ref-PoEAA_3-9">j</a></sup> <sup><a href="#cite_ref-PoEAA_3-10">k</a></sup> <sup><a href="#cite_ref-PoEAA_3-11">l</a></sup> <sup><a href="#cite_ref-PoEAA_3-12">m</a></sup> <sup><a href="#cite_ref-PoEAA_3-13">n</a></sup> <sup><a href="#cite_ref-PoEAA_3-14">o</a></sup></span> <span class="reference-text">
Martin Fowler&#58; <cite style="font-style:italic">Patterns of Enterprise Application Architecture</cite>. Addison-Wesley-Longman, Amsterdam 2002, <a href="/wiki/Spezial:ISBN-Suche/0321127420" class="internal mw-magiclink-isbn">ISBN 0-321-12742-0</a>.<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info:sid/de.wikipedia.org:Entwurfsmuster&amp;rft.au=Martin+Fowler&amp;rft.btitle=Patterns+of+Enterprise+Application+Architecture&amp;rft.date=2002&amp;rft.genre=book&amp;rft.isbn=0321127420&amp;rft.place=Amsterdam&amp;rft.pub=Addison-Wesley-Longman" style="display:none">&#160;</span></span>
</li>
<li id="cite_note-Alexander-4"><span class="mw-cite-backlink"><a href="#cite_ref-Alexander_4-0">↑</a></span> <span class="reference-text">
<a href="/wiki/Christopher_Alexander" title="Christopher Alexander">Christopher Alexander</a>, Sara Ishikawa, Murray Silverstein, Max Jacobson, Ingrid Fiksfahl-King, Shlomo Angel: <i>Eine Muster-Sprache. Städte, Gebäude, Konstruktion.</i> Löcker, Wien 1995, <a href="/wiki/Spezial:ISBN-Suche/3854091796" class="internal mw-magiclink-isbn">ISBN 3-85409-179-6</a>.</span>
</li>
<li id="cite_note-Sierra-5"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-Sierra_5-0">a</a></sup> <sup><a href="#cite_ref-Sierra_5-1">b</a></sup> <sup><a href="#cite_ref-Sierra_5-2">c</a></sup> <sup><a href="#cite_ref-Sierra_5-3">d</a></sup> <sup><a href="#cite_ref-Sierra_5-4">e</a></sup> <sup><a href="#cite_ref-Sierra_5-5">f</a></sup> <sup><a href="#cite_ref-Sierra_5-6">g</a></sup> <sup><a href="#cite_ref-Sierra_5-7">h</a></sup> <sup><a href="#cite_ref-Sierra_5-8">i</a></sup> <sup><a href="#cite_ref-Sierra_5-9">j</a></sup></span> <span class="reference-text">Stuart Sierra - Functional Design Patterns</span>
</li>
<li id="cite_note-EIP-Book-6"><span class="mw-cite-backlink"><a href="#cite_ref-EIP-Book_6-0">↑</a></span> <span class="reference-text">
Gregor Hohpe, Bobby Woolf&#58; <cite class="lang" lang="en" dir="auto" style="font-style:italic">Enterprise Integration Patterns. Designing, Building and Deploying Messaging Solutions</cite>. Addison-Wesley, Boston 2003, <a href="/wiki/Spezial:ISBN-Suche/0321200683" class="internal mw-magiclink-isbn">ISBN 0-321-20068-3</a> (englisch).<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info:sid/de.wikipedia.org:Entwurfsmuster&amp;rft.au=Gregor+Hohpe%2C+Bobby+Woolf&amp;rft.btitle=Enterprise+Integration+Patterns.+Designing%2C+Building+and+Deploying+Messaging+Solutions&amp;rft.date=2003&amp;rft.genre=book&amp;rft.isbn=0321200683&amp;rft.place=Boston&amp;rft.pub=Addison-Wesley" style="display:none">&#160;</span></span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><a href="#cite_ref-7">↑</a></span> <span class="reference-text">Kamal Wickramanayake&#58;&#32;<cite><a rel="nofollow" class="external text" href="http://www.swview.org/blog/mvc-design-pattern-or-architectural-pattern">Is MVC a design pattern or an architectural pattern?</a></cite>&#32;(<span style="color:#555; font-size:90%;">englisch</span>)&#32;In: <cite>Software View</cite>.&#32;17.&#160;Juli 2010.&#32;Abgerufen am 16.&#160;Dezember 2016.</span>
</li>
</ol>
<style data-mw-deduplicate="TemplateStyles:r205163471">.mw-parser-output div.NavFrame{border:1px solid #A2A9B1;clear:both;font-size:95%;margin-top:1.5em;min-height:0;padding:2px;text-align:center}.mw-parser-output div.NavPic{float:left;padding:2px}.mw-parser-output div.NavHead{background-color:#EAECF0;font-weight:bold}.mw-parser-output div.NavFrame:after{clear:both;content:"";display:block}.mw-parser-output div.NavFrame+div.NavFrame,.mw-parser-output div.NavFrame+link+div.NavFrame,.mw-parser-output div.NavFrame+style+div.NavFrame{margin-top:-1px}.mw-parser-output .NavToggle{float:right;font-size:x-small}</style><div class="NavFrame navigation-not-searchable"><style data-mw-deduplicate="TemplateStyles:r212646405">.mw-parser-output .hlist .wikitable{border-top:0px!important;border-bottom:0px!important;margin-top:0!important;margin-bottom:0!important}.mw-parser-output .hlist .wikitable tr:first-of-type td{border-top:0px!important}.mw-parser-output .hlist .wikitable tr:last-of-type td{border-bottom:0px!important}.mw-parser-output .NavContent>.wikitable>*>tr{border-top:2px solid #fdfdfd!important;border-bottom:2px solid #fdfdfd!important}</style><div class="NavHead" style="background:#efefef;"><div class="erweiterte-navigationsleiste-quicklinks" style="float:left; font-weight:normal; font-size:75%; margin-left:1em; margin-right:2em; display:none;"><a href="/wiki/Vorlage:Navigationsleiste_Entwurfsmuster" title="Vorlage:Navigationsleiste Entwurfsmuster"><span title="Vorlage anzeigen">V</span></a> <a href="/wiki/Vorlage_Diskussion:Navigationsleiste_Entwurfsmuster" title="Vorlage Diskussion:Navigationsleiste Entwurfsmuster"><span title="Diskussion anzeigen">D</span></a></div><a class="mw-selflink selflink">Entwurfsmuster</a></div><div class="NavContent" style="clear:left;">
<table class="wikitable zebra" style="width:100%;margin:0;text-align:left;font-size:95%;margin-top:.1em;margin-bottom:.0em;">
<tbody><tr style="display:none">
<td>
</td>
<td>
<p><br />
</p>
</td></tr>
<tr>
<td style="white-space: nowrap;text-align: right;background: #DDE5EE;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b><a href="/wiki/Erzeugungsmuster" title="Erzeugungsmuster">Erzeugungsmuster</a></b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="/wiki/Abstrakte_Fabrik" title="Abstrakte Fabrik">Abstrakte Fabrik</a>&#160;&#124; <a href="/wiki/Erbauer_(Entwurfsmuster)" title="Erbauer (Entwurfsmuster)">Erbauer</a>&#160;&#124; <a href="/wiki/Fabrikmethode" title="Fabrikmethode">Fabrikmethode</a>&#160;&#124; <a href="/wiki/Prototyp_(Entwurfsmuster)" title="Prototyp (Entwurfsmuster)">Prototyp</a>&#160;&#124; <a href="/wiki/Singleton_(Entwurfsmuster)" title="Singleton (Entwurfsmuster)">Singleton</a>&#160;&#124; <a href="/wiki/Multiton" title="Multiton">Multiton</a>&#160;&#124; <a href="/wiki/Objektpool" title="Objektpool">Objektpool</a>
</p>
</td></tr>
<tr>
<td style="white-space: nowrap;text-align: right;background: #DDE5EE;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b><a href="/wiki/Strukturmuster" title="Strukturmuster">Strukturmuster</a></b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="/wiki/Adapter_(Entwurfsmuster)" title="Adapter (Entwurfsmuster)">Adapter</a>&#160;&#124; <a href="/wiki/Br%C3%BCcke_(Entwurfsmuster)" title="Brücke (Entwurfsmuster)">Brücke</a>&#160;&#124; <a href="/wiki/Decorator" title="Decorator">Decorator</a>&#160;&#124; <a href="/wiki/Fassade_(Entwurfsmuster)" title="Fassade (Entwurfsmuster)">Fassade</a>&#160;&#124; <a href="/wiki/Fliegengewicht_(Entwurfsmuster)" title="Fliegengewicht (Entwurfsmuster)">Fliegengewicht</a>&#160;&#124; <a href="/wiki/Kompositum_(Entwurfsmuster)" title="Kompositum (Entwurfsmuster)">Kompositum</a>&#160;&#124; <a href="/wiki/Stellvertreter_(Entwurfsmuster)" title="Stellvertreter (Entwurfsmuster)">Stellvertreter</a>
</p>
</td></tr>
<tr>
<td style="white-space: nowrap;text-align: right;background: #DDE5EE;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b><a href="/wiki/Verhaltensmuster_(Software)" title="Verhaltensmuster (Software)">Verhaltensmuster</a></b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="/wiki/Beobachter_(Entwurfsmuster)" title="Beobachter (Entwurfsmuster)">Beobachter</a>&#160;&#124; <a href="/wiki/Besucher_(Entwurfsmuster)" title="Besucher (Entwurfsmuster)">Besucher</a>&#160;&#124; <a href="/wiki/Interpreter_(Entwurfsmuster)" title="Interpreter (Entwurfsmuster)">Interpreter</a>&#160;&#124; <a href="/wiki/Iterator_(Entwurfsmuster)" title="Iterator (Entwurfsmuster)">Iterator</a>&#160;&#124; <a href="/wiki/Kommando_(Entwurfsmuster)" title="Kommando (Entwurfsmuster)">Kommando</a>&#160;&#124; <a href="/wiki/Memento_(Entwurfsmuster)" title="Memento (Entwurfsmuster)">Memento</a>&#160;&#124; <a href="/wiki/Schablonenmethode" title="Schablonenmethode">Schablonenmethode</a>&#160;&#124; <a href="/wiki/Strategie_(Entwurfsmuster)" title="Strategie (Entwurfsmuster)">Strategie</a>&#160;&#124; <a href="/wiki/Vermittler_(Entwurfsmuster)" title="Vermittler (Entwurfsmuster)">Vermittler</a>&#160;&#124; <a href="/wiki/Zustand_(Entwurfsmuster)" title="Zustand (Entwurfsmuster)">Zustand</a>&#160;&#124; <a href="/wiki/Zust%C3%A4ndigkeitskette" title="Zuständigkeitskette">Zuständigkeitskette</a>&#160;&#124; <a href="/wiki/Interceptor_(Entwurfsmuster)" title="Interceptor (Entwurfsmuster)">Interceptor</a>&#160;&#124; <a href="/wiki/Nullobjekt_(Entwurfsmuster)" title="Nullobjekt (Entwurfsmuster)">Nullobjekt</a>&#160;&#124; <a href="/wiki/Protokollstapel" title="Protokollstapel">Protokollstapel</a>
</p>
</td></tr>
<tr>
<td style="white-space: nowrap;text-align: right;background: #DDE5EE;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b>Muster für <a href="/wiki/Objektrelationale_Abbildung" title="Objektrelationale Abbildung">objektrelationale Abbildung</a></b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="/wiki/Transferobjekt" title="Transferobjekt">Datentransferobjekt</a>&#160;&#124; <a href="/w/index.php?title=Table_Data_Gateway&amp;action=edit&amp;redlink=1" class="new" title="Table Data Gateway (Seite nicht vorhanden)">Table Data Gateway</a>&#160;&#124; <a href="/w/index.php?title=Row_Data_Gateway&amp;action=edit&amp;redlink=1" class="new" title="Row Data Gateway (Seite nicht vorhanden)">Row Data Gateway</a>&#160;&#124; <a href="/wiki/Active_Record" title="Active Record">Active Record</a>&#160;&#124; <a href="/wiki/Unit_of_Work" title="Unit of Work">Unit of Work</a>&#160;&#124; <a href="/w/index.php?title=Identity_Map&amp;action=edit&amp;redlink=1" class="new" title="Identity Map (Seite nicht vorhanden)">Identity Map</a>&#160;&#124; <a href="/wiki/Lazy_Loading" title="Lazy Loading">Lazy Loading</a>&#160;&#124; <a href="/w/index.php?title=Identity_Field&amp;action=edit&amp;redlink=1" class="new" title="Identity Field (Seite nicht vorhanden)">Identity Field</a>&#160;&#124; <a href="/w/index.php?title=Dependent_Mapping&amp;action=edit&amp;redlink=1" class="new" title="Dependent Mapping (Seite nicht vorhanden)">Dependent Mapping</a>&#160;&#124; <a href="/w/index.php?title=Embedded_Value_(Entwurfsmuster)&amp;action=edit&amp;redlink=1" class="new" title="Embedded Value (Entwurfsmuster) (Seite nicht vorhanden)">Embedded Value</a>&#160;&#124; <a href="/w/index.php?title=Serialized_LOB&amp;action=edit&amp;redlink=1" class="new" title="Serialized LOB (Seite nicht vorhanden)">Serialized LOB</a>&#160;&#124; <a href="/w/index.php?title=Inheritance_Mapper&amp;action=edit&amp;redlink=1" class="new" title="Inheritance Mapper (Seite nicht vorhanden)">Inheritance Mapper</a>&#160;&#124; <a href="/w/index.php?title=Metadata_Mapping&amp;action=edit&amp;redlink=1" class="new" title="Metadata Mapping (Seite nicht vorhanden)">Metadata Mapping</a>&#160;&#124; <a href="/w/index.php?title=Query_Object&amp;action=edit&amp;redlink=1" class="new" title="Query Object (Seite nicht vorhanden)">Query Object</a>&#160;&#124; <a href="/wiki/Command-Query-Responsibility-Segregation" title="Command-Query-Responsibility-Segregation">Command-Query-Responsibility-Segregation</a>
</p>
</td></tr>
<tr>
<td style="white-space: nowrap;text-align: right;background: #DDE5EE;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b><a href="/wiki/Nachrichten%C3%BCbermittlungsmuster" title="Nachrichtenübermittlungsmuster">Nachrichtenübermittlungsmuster</a></b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="/wiki/Message_(Entwurfsmuster)" title="Message (Entwurfsmuster)">Message</a>&#160;&#124; <a href="/w/index.php?title=Command_Message&amp;action=edit&amp;redlink=1" class="new" title="Command Message (Seite nicht vorhanden)">Command Message</a>&#160;&#124; <a href="/wiki/Document_Message" title="Document Message">Document Message</a>&#160;&#124; <a href="/w/index.php?title=Event_Message&amp;action=edit&amp;redlink=1" class="new" title="Event Message (Seite nicht vorhanden)">Event Message</a>&#160;&#124; <a href="/w/index.php?title=Request-Reply&amp;action=edit&amp;redlink=1" class="new" title="Request-Reply (Seite nicht vorhanden)">Request-Reply</a>&#160;&#124; <a href="/w/index.php?title=Return_Address&amp;action=edit&amp;redlink=1" class="new" title="Return Address (Seite nicht vorhanden)">Return Address</a>&#160;&#124; <a href="/w/index.php?title=Correlation_Identifier&amp;action=edit&amp;redlink=1" class="new" title="Correlation Identifier (Seite nicht vorhanden)">Correlation Identifier</a>&#160;&#124; <a href="/w/index.php?title=Message_Sequence&amp;action=edit&amp;redlink=1" class="new" title="Message Sequence (Seite nicht vorhanden)">Message Sequence</a>&#160;&#124; <a href="/w/index.php?title=Message_Expiration&amp;action=edit&amp;redlink=1" class="new" title="Message Expiration (Seite nicht vorhanden)">Message Expiration</a>&#160;&#124; <a href="/w/index.php?title=Format_Indicator&amp;action=edit&amp;redlink=1" class="new" title="Format Indicator (Seite nicht vorhanden)">Format Indicator</a>&#160;&#124; <a href="/w/index.php?title=Message_Channel&amp;action=edit&amp;redlink=1" class="new" title="Message Channel (Seite nicht vorhanden)">Message Channel</a>&#160;&#124; <a href="/w/index.php?title=Point-to-Point_Channel&amp;action=edit&amp;redlink=1" class="new" title="Point-to-Point Channel (Seite nicht vorhanden)">Point-to-Point Channel</a>&#160;&#124; <a href="/w/index.php?title=Publisher-Subscriber_Channel&amp;action=edit&amp;redlink=1" class="new" title="Publisher-Subscriber Channel (Seite nicht vorhanden)">Publisher-Subscriber Channel</a>&#160;&#124; <a href="/w/index.php?title=Datatype_Channel&amp;action=edit&amp;redlink=1" class="new" title="Datatype Channel (Seite nicht vorhanden)">Datatype Channel</a>&#160;&#124; <a href="/w/index.php?title=Invalid_Message_Channel&amp;action=edit&amp;redlink=1" class="new" title="Invalid Message Channel (Seite nicht vorhanden)">Invalid Message Channel</a>&#160;&#124; <a href="/w/index.php?title=Dead_Letter_Channel&amp;action=edit&amp;redlink=1" class="new" title="Dead Letter Channel (Seite nicht vorhanden)">Dead Letter Channel</a>&#160;&#124; <a href="/w/index.php?title=Guaranteed_Delivery&amp;action=edit&amp;redlink=1" class="new" title="Guaranteed Delivery (Seite nicht vorhanden)">Guaranteed Delivery</a>&#160;&#124; <a href="/w/index.php?title=Channel_Adapter&amp;action=edit&amp;redlink=1" class="new" title="Channel Adapter (Seite nicht vorhanden)">Channel Adapter</a>&#160;&#124; <a href="/w/index.php?title=Messaging_Bridge&amp;action=edit&amp;redlink=1" class="new" title="Messaging Bridge (Seite nicht vorhanden)">Messaging Bridge</a>&#160;&#124; <a href="/w/index.php?title=Message_Bus_(Entwurfsmuster)&amp;action=edit&amp;redlink=1" class="new" title="Message Bus (Entwurfsmuster) (Seite nicht vorhanden)">Message Bus</a>&#160;&#124; <a href="/w/index.php?title=Pipes-and-Filters&amp;action=edit&amp;redlink=1" class="new" title="Pipes-and-Filters (Seite nicht vorhanden)">Pipes-and-Filters</a>&#160;&#124; <a href="/w/index.php?title=Message_Router&amp;action=edit&amp;redlink=1" class="new" title="Message Router (Seite nicht vorhanden)">Message Router</a>&#160;&#124; <a href="/w/index.php?title=Content-based_Router&amp;action=edit&amp;redlink=1" class="new" title="Content-based Router (Seite nicht vorhanden)">Content-based Router</a>&#160;&#124; <a href="/w/index.php?title=Message_Filter&amp;action=edit&amp;redlink=1" class="new" title="Message Filter (Seite nicht vorhanden)">Message Filter</a>&#160;&#124; <a href="/w/index.php?title=Dynamic_Router&amp;action=edi
</p>
</td></tr>
<tr>
<td style="white-space: nowrap;text-align: right;background: #DDE5EE;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 1px solid #FFF;padding: 0 1em;"><b>Andere</b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="/w/index.php?title=Application_Controller&amp;action=edit&amp;redlink=1" class="new" title="Application Controller (Seite nicht vorhanden)">Application Controller</a>&#160;&#124; <a href="/wiki/Business_Delegate" title="Business Delegate">Business Delegate</a>&#160;&#124; <a href="/wiki/Data_Access_Object" title="Data Access Object">Data Access Object</a>&#160;&#124; <a href="/wiki/Dependency_Injection" title="Dependency Injection">Dependency Injection</a>&#160;&#124; <a href="/wiki/Extension_Interface" title="Extension Interface">Extension Interface</a>&#160;&#124; <a href="/wiki/Fluent_Interface" title="Fluent Interface">Fluent Interface</a>&#160;&#124; <a href="/wiki/Inversion_of_Control" title="Inversion of Control">Inversion of Control</a> (IoC)&#160;&#124; <a href="/wiki/Lock" title="Lock">Lock</a>&#160;&#124; <a href="/wiki/Model_View_Controller" title="Model View Controller">Model View Controller</a> (MVC)&#160;&#124; <a href="/wiki/Model_View_Presenter" title="Model View Presenter">Model View Presenter</a> (MVP)&#160;&#124; <a href="/wiki/Model_View_Update" title="Model View Update">Model View Update</a> (MVU)&#160;&#124; <a href="/wiki/Model_View_ViewModel" title="Model View ViewModel">Model View ViewModel</a> (MVVM)&#160;&#124; <a href="/w/index.php?title=Page_Controller&amp;action=edit&amp;redlink=1" class="new" title="Page Controller (Seite nicht vorhanden)">Page Controller</a>&#160;&#124; <a href="/wiki/Registry_(Entwurfsmuster)" title="Registry (Entwurfsmuster)">Registry</a>&#160;&#124; <a href="/w/index.php?title=Remote_Facade&amp;action=edit&amp;redlink=1" class="new" title="Remote Facade (Seite nicht vorhanden)">Remote Facade</a>&#160;&#124; <a href="/wiki/Repository_(Entwurfsmuster)" title="Repository (Entwurfsmuster)">Repository</a>&#160;&#124; <a href="/wiki/Service_Locator" class="mw-redirect" title="Service Locator">Service Locator</a>&#160;&#124; <a href="/w/index.php?title=Session_State&amp;action=edit&amp;redlink=1" class="new" title="Session State (Seite nicht vorhanden)">Session State</a>&#160;&#124; <a href="/w/index.php?title=Table_Module&amp;action=edit&amp;redlink=1" class="new" title="Table Module (Seite nicht vorhanden)">Table Module</a>&#160;&#124; <a href="/w/index.php?title=Template_View&amp;action=edit&amp;redlink=1" class="new" title="Template View (Seite nicht vorhanden)">Template View</a>&#160;&#124; <a href="/w/index.php?title=Threadpool&amp;action=edit&amp;redlink=1" class="new" title="Threadpool (Seite nicht vorhanden)">Threadpool</a>&#160;&#124; <a href="/w/index.php?title=Transaction_Script&amp;action=edit&amp;redlink=1" class="new" title="Transaction Script (Seite nicht vorhanden)">Transaction Script</a>&#160;&#124; <a href="/w/index.php?title=Transform_View&amp;action=edit&amp;redlink=1" class="new" title="Transform View (Seite nicht vorhanden)">Transform View</a>&#160;&#124; <a href="/w/index.php?title=Two-Step_View&amp;action=edit&amp;redlink=1" class="new" title="Two-Step View (Seite nicht vorhanden)">Two-Step View</a>&#160;&#124; <a href="/wiki/Value_Object" title="Value Object">Value Object</a>
</p>
</td></tr>
</tbody></table></div></div>
<!--
NewPP limit report
Parsed by mw1329
Cached time: 20211020223834
Cache expiry: 1814400
Reduced expiry: false
Complications: []
CPU time usage: 0.399 seconds
Real time usage: 0.490 seconds
Preprocessor visited node count: 2374/1000000
Postexpand include size: 57714/2097152 bytes
Template argument size: 23316/2097152 bytes
Highest expansion depth: 19/40
Expensive parser function count: 3/500
Unstrip recursion depth: 0/20
Unstrip postexpand size: 12578/5000000 bytes
Lua time usage: 0.101/10.000 seconds
Lua memory usage: 4706782/52428800 bytes
Number of Wikibase entities loaded: 0/400
-->
<!--
Transclusion expansion time report (%,ms,calls,template)
100.00% 359.772 1 -total
23.29% 83.805 7 Vorlage:Literatur
16.12% 57.995 1 Vorlage:Navigationsleiste_Entwurfsmuster
15.17% 54.564 1 Vorlage:Erweiterte_Navigationsleiste
13.03% 46.892 1 Vorlage:Mehrspaltige_Liste
12.25% 44.060 1 Vorlage:Internetquelle
10.62% 38.216 1 Vorlage:Cite_web
10.31% 37.078 3 Vorlage:EnS
5.88% 21.170 3 Vorlage:FormatDate
4.75% 17.073 6 Vorlage:Lang
-->
<!-- Saved in parser cache with key dewiki:stable-pcache:idhash:11799-0!canonical and timestamp 20211020223834 and revision id 215264580. Serialized with JSON.
-->
</div><noscript><img src="//de.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" title="" width="1" height="1" style="border: none; position: absolute;" /></noscript>
<div class="printfooter">Abgerufen von „<a dir="ltr" href="https://de.wikipedia.org/w/index.php?title=Entwurfsmuster&amp;oldid=215264580">https://de.wikipedia.org/w/index.php?title=Entwurfsmuster&amp;oldid=215264580</a>“</div></div>
<div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Wikipedia:Kategorien" title="Wikipedia:Kategorien">Kategorien</a>: <ul><li><a href="/wiki/Kategorie:Entwurfsmuster" title="Kategorie:Entwurfsmuster">Entwurfsmuster</a></li><li><a href="/wiki/Kategorie:Systems_Engineering" title="Kategorie:Systems Engineering">Systems Engineering</a></li></ul></div></div>
</div>
</div>
<div id='mw-data-after-content'>
<div class="read-more-container"></div>
</div>
<div id="mw-navigation">
<h2>Navigationsmenü</h2>
<div id="mw-head">
<nav id="p-personal" class="mw-portlet mw-portlet-personal vector-user-menu-legacy vector-menu" aria-labelledby="p-personal-label" role="navigation"
>
<h3 id="p-personal-label" aria-label="" class="vector-menu-heading">
<span>Meine Werkzeuge</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"><li id="pt-anonuserpage" class="mw-list-item"><span>Nicht angemeldet</span></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Spezial:Meine_Diskussionsseite" title="Diskussion über Änderungen von dieser IP-Adresse [n]" accesskey="n"><span>Diskussionsseite</span></a></li><li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Spezial:Meine_Beitr%C3%A4ge" title="Eine Liste der Bearbeitungen, die von dieser IP-Adresse gemacht wurden [y]" accesskey="y"><span>Beiträge</span></a></li><li id="pt-createaccount" class="mw-list-item"><a href="/w/index.php?title=Spezial:Benutzerkonto_anlegen&amp;returnto=Entwurfsmuster" title="Wir ermutigen dich dazu, ein Benutzerkonto zu erstellen und dich anzumelden. Es ist jedoch nicht zwingend erforderlich."><span>Benutzerkonto erstellen</span></a></li><li id="pt-login" class="mw-list-item"><a href="/w/index.php?title=Spezial:Anmelden&amp;returnto=Entwurfsmuster" title="Anmelden ist zwar keine Pflicht, wird aber gerne gesehen. [o]" accesskey="o"><span>Anmelden</span></a></li></ul>
</div>
</nav>
<div id="left-navigation">
<nav id="p-namespaces" class="mw-portlet mw-portlet-namespaces vector-menu vector-menu-tabs" aria-labelledby="p-namespaces-label" role="navigation"
>
<h3 id="p-namespaces-label" aria-label="" class="vector-menu-heading">
<span>Namensräume</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"><li id="ca-nstab-main" class="selected mw-list-item"><a href="/wiki/Entwurfsmuster" title="Seiteninhalt anzeigen [c]" accesskey="c"><span>Artikel</span></a></li><li id="ca-talk" class="mw-list-item"><a href="/wiki/Diskussion:Entwurfsmuster" rel="discussion" title="Diskussion zum Seiteninhalt [t]" accesskey="t"><span>Diskussion</span></a></li></ul>
</div>
</nav>
<nav id="p-variants" class="mw-portlet mw-portlet-variants emptyPortlet vector-menu-dropdown-noicon vector-menu vector-menu-dropdown" aria-labelledby="p-variants-label" role="navigation"
>
<input type="checkbox"
id="p-variants-checkbox"
role="button"
aria-haspopup="true"
data-event-name="ui.dropdown-p-variants"
class="vector-menu-checkbox" aria-labelledby="p-variants-label" />
<h3 id="p-variants-label" aria-label="Sprachvariante ändern" class="vector-menu-heading">
<span>Varianten</span>
<span class="vector-menu-checkbox-expanded">ausgeklappt</span>
<span class="vector-menu-checkbox-collapsed">eingeklappt</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"></ul>
</div>
</nav>
</div>
<div id="right-navigation">
<nav id="p-views" class="mw-portlet mw-portlet-views vector-menu vector-menu-tabs" aria-labelledby="p-views-label" role="navigation"
>
<h3 id="p-views-label" aria-label="" class="vector-menu-heading">
<span>Ansichten</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"><li id="ca-view" class="selected mw-list-item"><a href="/wiki/Entwurfsmuster"><span>Lesen</span></a></li><li id="ca-ve-edit" class="mw-list-item"><a href="/w/index.php?title=Entwurfsmuster&amp;veaction=edit" title="Diese Seite mit dem VisualEditor bearbeiten [v]" accesskey="v"><span>Bearbeiten</span></a></li><li id="ca-edit" class="collapsible mw-list-item"><a href="/w/index.php?title=Entwurfsmuster&amp;action=edit" title="Diese Seite bearbeiten [e]" accesskey="e"><span>Quelltext bearbeiten</span></a></li><li id="ca-history" class="mw-list-item"><a href="/w/index.php?title=Entwurfsmuster&amp;action=history" title="Frühere Versionen dieser Seite [h]" accesskey="h"><span>Versionsgeschichte</span></a></li></ul>
</div>
</nav>
<nav id="p-cactions" class="mw-portlet mw-portlet-cactions emptyPortlet vector-menu-dropdown-noicon vector-menu vector-menu-dropdown" aria-labelledby="p-cactions-label" role="navigation" title="Weitere Optionen"
>
<input type="checkbox"
id="p-cactions-checkbox"
role="button"
aria-haspopup="true"
data-event-name="ui.dropdown-p-cactions"
class="vector-menu-checkbox" aria-labelledby="p-cactions-label" />
<h3 id="p-cactions-label" aria-label="" class="vector-menu-heading">
<span>Weitere</span>
<span class="vector-menu-checkbox-expanded">ausgeklappt</span>
<span class="vector-menu-checkbox-collapsed">eingeklappt</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"></ul>
</div>
</nav>
<div id="p-search" role="search" class=" vector-search-box">
<div>
<h3 >
<label for="searchInput">Suche</label>
</h3>
<form action="/w/index.php" id="searchform"
class="vector-search-box-form">
<div id="simpleSearch"
class="vector-search-box-inner"
data-search-loc="header-navigation">
<input class="vector-search-box-input"
type="search" name="search" placeholder="Wikipedia durchsuchen" autocapitalize="sentences" title="Durchsuche die Wikipedia [f]" accesskey="f" id="searchInput"
/>
<input type="hidden" name="title" value="Spezial:Suche"/>
<input id="mw-searchButton"
class="searchButton mw-fallbackSearchButton" type="submit" name="fulltext" title="Suche nach Seiten, die diesen Text enthalten" value="Suchen" />
<input id="searchButton"
class="searchButton" type="submit" name="go" title="Gehe direkt zu der Seite mit genau diesem Namen, falls sie vorhanden ist." value="Artikel" />
</div>
</form>
</div>
</div>
</div>
</div>
<div id="mw-panel">
<div id="p-logo" role="banner">
<a class="mw-wiki-logo" href="/wiki/Wikipedia:Hauptseite"
title="Hauptseite"></a>
</div>
<nav id="p-navigation" class="mw-portlet mw-portlet-navigation vector-menu vector-menu-portal portal" aria-labelledby="p-navigation-label" role="navigation"
>
<h3 id="p-navigation-label" aria-label="" class="vector-menu-heading">
<span>Navigation</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"><li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Wikipedia:Hauptseite" title="Hauptseite besuchen [z]" accesskey="z"><span>Hauptseite</span></a></li><li id="n-topics" class="mw-list-item"><a href="/wiki/Portal:Wikipedia_nach_Themen"><span>Themenportale</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Spezial:Zuf%C3%A4llige_Seite" title="Zufällige Seite aufrufen [x]" accesskey="x"><span>Zufälliger Artikel</span></a></li></ul>
</div>
</nav>
<nav id="p-Mitmachen" class="mw-portlet mw-portlet-Mitmachen vector-menu vector-menu-portal portal" aria-labelledby="p-Mitmachen-label" role="navigation"
>
<h3 id="p-Mitmachen-label" aria-label="" class="vector-menu-heading">
<span>Mitmachen</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"><li id="n-Artikel-verbessern" class="mw-list-item"><a href="/wiki/Wikipedia:Beteiligen"><span>Artikel verbessern</span></a></li><li id="n-Neuerartikel" class="mw-list-item"><a href="/wiki/Hilfe:Neuen_Artikel_anlegen"><span>Neuen Artikel anlegen</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Autorenportal" title="Info-Zentrum über Beteiligungsmöglichkeiten"><span>Autorenportal</span></a></li><li id="n-help" class="mw-list-item"><a href="/wiki/Hilfe:%C3%9Cbersicht" title="Übersicht über Hilfeseiten"><span>Hilfe</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Spezial:Letzte_%C3%84nderungen" title="Liste der letzten Änderungen in Wikipedia [r]" accesskey="r"><span>Letzte Änderungen</span></a></li><li id="n-contact" class="mw-list-item"><a href="/wiki/Wikipedia:Kontakt" title="Kontaktmöglichkeiten"><span>Kontakt</span></a></li><li id="n-sitesupport" class="mw-list-item"><a href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&amp;utm_medium=sidebar&amp;utm_campaign=C13_de.wikipedia.org&amp;uselang=de" title="Unterstütze uns"><span>Spenden</span></a></li></ul>
</div>
</nav>
<nav id="p-tb" class="mw-portlet mw-portlet-tb vector-menu vector-menu-portal portal" aria-labelledby="p-tb-label" role="navigation"
>
<h3 id="p-tb-label" aria-label="" class="vector-menu-heading">
<span>Werkzeuge</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"><li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Spezial:Linkliste/Entwurfsmuster" title="Liste aller Seiten, die hierher verlinken [j]" accesskey="j"><span>Links auf diese Seite</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Spezial:%C3%84nderungen_an_verlinkten_Seiten/Entwurfsmuster" rel="nofollow" title="Letzte Änderungen an Seiten, die von hier verlinkt sind [k]" accesskey="k"><span>Änderungen an verlinkten Seiten</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Spezial:Spezialseiten" title="Liste aller Spezialseiten [q]" accesskey="q"><span>Spezialseiten</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Entwurfsmuster&amp;oldid=215264580" title="Dauerhafter Link zu dieser Seitenversion"><span>Permanenter Link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Entwurfsmuster&amp;action=info" title="Weitere Informationen über diese Seite"><span>Seiten­informationen</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Spezial:Zitierhilfe&amp;page=Entwurfsmuster&amp;id=215264580&amp;wpFormIdentifier=titleform" title="Hinweise, wie diese Seite zitiert werden kann"><span>Artikel zitieren</span></a></li><li id="t-wikibase" class="mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q181156" title="Link zum verbundenen Objekt im Datenrepositorium [g]" accesskey="g"><span>Wikidata-Datenobjekt</span></a></li></ul>
</div>
</nav>
<nav id="p-coll-print_export" class="mw-portlet mw-portlet-coll-print_export vector-menu vector-menu-portal portal" aria-labelledby="p-coll-print_export-label" role="navigation"
>
<h3 id="p-coll-print_export-label" aria-label="" class="vector-menu-heading">
<span>Drucken/­exportieren</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"><li id="coll-create_a_book" class="mw-list-item"><a href="/w/index.php?title=Spezial:Buch&amp;bookcmd=book_creator&amp;referer=Entwurfsmuster"><span>Buch erstellen</span></a></li><li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Spezial:DownloadAsPdf&amp;page=Entwurfsmuster&amp;action=show-download-screen"><span>Als PDF herunterladen</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=Entwurfsmuster&amp;printable=yes" title="Druckansicht dieser Seite [p]" accesskey="p"><span>Druckversion</span></a></li></ul>
</div>
</nav>
<nav id="p-wikibase-otherprojects" class="mw-portlet mw-portlet-wikibase-otherprojects vector-menu vector-menu-portal portal" aria-labelledby="p-wikibase-otherprojects-label" role="navigation"
>
<h3 id="p-wikibase-otherprojects-label" aria-label="" class="vector-menu-heading">
<span>In anderen Projekten</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"><li class="wb-otherproject-link wb-otherproject-commons mw-list-item"><a href="https://commons.wikimedia.org/wiki/Software_design_patterns" hreflang="en"><span>Commons</span></a></li><li class="wb-otherproject-link wb-otherproject-wikibooks mw-list-item"><a href="https://de.wikibooks.org/wiki/Muster" hreflang="de"><span>Wikibooks</span></a></li></ul>
</div>
</nav>
<nav id="p-lang" class="mw-portlet mw-portlet-lang vector-menu vector-menu-portal portal" aria-labelledby="p-lang-label" role="navigation"
>
<h3 id="p-lang-label" aria-label="" class="vector-menu-heading">
<span>In anderen Sprachen</span>
</h3>
<div class="vector-menu-content">
<ul class="vector-menu-content-list"><li class="interlanguage-link interwiki-af mw-list-item"><a href="https://af.wikipedia.org/wiki/Ontwerpspatroon_(rekenaarwetenskap)" title="Ontwerpspatroon (rekenaarwetenskap) Afrikaans" lang="af" hreflang="af" class="interlanguage-link-target"><span>Afrikaans</span></a></li><li class="interlanguage-link interwiki-als mw-list-item"><a href="https://als.wikipedia.org/wiki/Entwurfsmuster" title="Entwurfsmuster Alemannisch" lang="gsw" hreflang="gsw" class="interlanguage-link-target"><span>Alemannisch</span></a></li><li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D9%86%D9%85%D8%A7%D8%B0%D8%AC_%D8%A7%D9%84%D8%AA%D8%B5%D9%85%D9%8A%D9%85_(%D9%87%D9%86%D8%AF%D8%B3%D8%A9_%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D9%8A%D8%A7%D8%AA)" title="نماذج التصميم (هندسة البرمجيات) Arabisch" lang="ar" hreflang="ar" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-ast mw-list-item"><a href="https://ast.wikipedia.org/wiki/Patr%C3%B3n_de_dise%C3%B1u" title="Patrón de diseñu Asturisch" lang="ast" hreflang="ast" class="interlanguage-link-target"><span>Asturianu</span></a></li><li class="interlanguage-link interwiki-bg mw-list-item"><a href="https://bg.wikipedia.org/wiki/%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%B8_%D0%B7%D0%B0_%D0%B4%D0%B8%D0%B7%D0%B0%D0%B9%D0%BD" title="Шаблони за дизайн Bulgarisch" lang="bg" hreflang="bg" class="interlanguage-link-target"><span>Български</span></a></li><li class="interlanguage-link interwiki-bs mw-list-item"><a href="https://bs.wikipedia.org/wiki/Ra%C4%8Dunarska_dizajn_%C5%A1ema" title="Računarska dizajn šema Bosnisch" lang="bs" hreflang="bs" class="interlanguage-link-target"><span>Bosanski</span></a></li><li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/Patr%C3%B3_de_disseny" title="Patró de disseny Katalanisch" lang="ca" hreflang="ca" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/N%C3%A1vrhov%C3%BD_vzor" title="Návrhový vzor Tschechisch" lang="cs" hreflang="cs" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-da mw-list-item"><a href="https://da.wikipedia.org/wiki/Design_pattern" title="Design pattern Dänisch" lang="da" hreflang="da" class="interlanguage-link-target"><span>Dansk</span></a></li><li class="interlanguage-link interwiki-el mw-list-item"><a href="https://el.wikipedia.org/wiki/%CE%A3%CF%87%CE%B5%CE%B4%CE%B9%CE%B1%CF%83%CF%84%CE%B9%CE%BA%CE%AC_%CF%80%CF%81%CF%8C%CF%84%CF%85%CF%80%CE%B1" title="Σχεδιαστικά πρότυπα Griechisch" lang="el" hreflang="el" class="interlanguage-link-target"><span>Ελληνικά</span></a></li><li class="interlanguage-link interwiki-en mw-list-item"><a href="https://en.wikipedia.org/wiki/Software_design_pattern" title="Software design pattern Englisch" lang="en" hreflang="en" class="interlanguage-link-target"><span>English</span></a></li><li class="interlanguage-link interwiki-es mw-list-item"><a href="https://es.wikipedia.org/wiki/Patr%C3%B3n_de_dise%C3%B1o" title="Patrón de diseño Spanisch" lang="es" hreflang="es" class="interlanguage-link-target"><span>Español</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C_%D9%86%D8%B1%D9%85%E2%80%8C%D8%A7%D9%81%D8%B2%D8%A7%D8%B1" title="الگوی طراحی نرم‌افزار Persisch" lang="fa" hreflang="fa" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fi mw-list-item"><a href="https://fi.wikipedia.org/wiki/Suunnittelumalli" title="Suunnittelumalli Finnisch" lang="fi" hreflang="fi" class="interlanguage-link-target"><span>Suomi</span></a></li><li class="interlanguage-
<div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q181156#sitelinks-wikipedia" title="Links auf Artikel in anderen Sprachen bearbeiten" class="wbc-editpage">Links bearbeiten</a></span></div>
</div>
</nav>
</div>
</div>
<footer id="footer" class="mw-footer" role="contentinfo" >
<ul id="footer-info">
<li id="footer-info-lastmod"> Diese Seite wurde zuletzt am 2. September 2021 um 14:03 Uhr bearbeitet.</li>
<li id="footer-info-copyright"><div id="footer-info-copyright-stats" class="noprint"><a class="external" href="https://pageviews.toolforge.org/?pages=Entwurfsmuster&amp;project=de.wikipedia.org" rel="nofollow">Abrufstatistik</a> · <a class="external" href=" https://xtools.wmflabs.org/articleinfo-authorship/de.wikipedia.org/Entwurfsmuster?uselang=de" rel="nofollow">Autoren</a> </div><div id="footer-info-copyright-separator"><br /></div><div id="footer-info-copyright-info">
Der Text ist unter der Lizenz <a class="internal" href="https://de.wikipedia.org/wiki/Wikipedia:Lizenzbestimmungen_Commons_Attribution-ShareAlike_3.0_Unported">„Creative Commons Attribution/Share Alike“</a> verfügbar; Informationen zu den Urhebern und zum Lizenzstatus eingebundener Mediendateien (etwa Bilder oder Videos) können im Regelfall durch Anklicken dieser abgerufen werden. Möglicherweise unterliegen die Inhalte jeweils zusätzlichen Bedingungen. Durch die Nutzung dieser Website erklären Sie sich mit den <a class="internal" href="https://foundation.wikimedia.org/wiki/Terms_of_Use/de">Nutzungsbedingungen</a> und der <a class="internal" href="https://meta.wikimedia.org/wiki/Privacy_policy/de">Datenschutzrichtlinie</a> einverstanden.<br />
Wikipedia® ist eine eingetragene Marke der Wikimedia Foundation Inc.</div></li>
</ul>
<ul id="footer-places">
<li id="footer-places-privacy"><a href="https://meta.wikimedia.org/wiki/Privacy_policy/de" class="extiw" title="m:Privacy policy/de">Datenschutz</a></li>
<li id="footer-places-about"><a href="/wiki/Wikipedia:%C3%9Cber_Wikipedia" title="Wikipedia:Über Wikipedia">Über Wikipedia</a></li>
<li id="footer-places-disclaimer"><a href="/wiki/Wikipedia:Impressum" title="Wikipedia:Impressum">Impressum</a></li>
<li id="footer-places-mobileview"><a href="//de.m.wikipedia.org/w/index.php?title=Entwurfsmuster&amp;mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile Ansicht</a></li>
<li id="footer-places-developers"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/How_to_contribute">Entwickler</a></li>
<li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/de.wikipedia.org">Statistiken</a></li>
<li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Cookie_statement">Stellungnahme zu Cookies</a></li>
</ul>
<ul id="footer-icons" class="noprint">
<li id="footer-copyrightico"><a href="https://wikimediafoundation.org/"><img src="/static/images/footer/wikimedia-button.png" srcset="/static/images/footer/wikimedia-button-1.5x.png 1.5x, /static/images/footer/wikimedia-button-2x.png 2x" width="88" height="31" alt="Wikimedia Foundation" loading="lazy" /></a></li>
<li id="footer-poweredbyico"><a href="https://www.mediawiki.org/"><img src="/static/images/footer/poweredby_mediawiki_88x31.png" alt="Powered by MediaWiki" srcset="/static/images/footer/poweredby_mediawiki_132x47.png 1.5x, /static/images/footer/poweredby_mediawiki_176x62.png 2x" width="88" height="31" loading="lazy"/></a></li>
</ul>
</footer>
<script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgPageParseReport":{"limitreport":{"cputime":"0.399","walltime":"0.490","ppvisitednodes":{"value":2374,"limit":1000000},"postexpandincludesize":{"value":57714,"limit":2097152},"templateargumentsize":{"value":23316,"limit":2097152},"expansiondepth":{"value":19,"limit":40},"expensivefunctioncount":{"value":3,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":12578,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 359.772 1 -total"," 23.29% 83.805 7 Vorlage:Literatur"," 16.12% 57.995 1 Vorlage:Navigationsleiste_Entwurfsmuster"," 15.17% 54.564 1 Vorlage:Erweiterte_Navigationsleiste"," 13.03% 46.892 1 Vorlage:Mehrspaltige_Liste"," 12.25% 44.060 1 Vorlage:Internetquelle"," 10.62% 38.216 1 Vorlage:Cite_web"," 10.31% 37.078 3 Vorlage:EnS"," 5.88% 21.170 3 Vorlage:FormatDate"," 4.75% 17.073 6 Vorlage:Lang"]},"scribunto":{"limitreport-timeusage":{"value":"0.101","limit":"10.000"},"limitreport-memusage":{"value":4706782,"limit":52428800}},"cachereport":{"origin":"mw1329","timestamp":"20211020223834","ttl":1814400,"transientcontent":false}}});});</script>
<script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"Entwurfsmuster","url":"https:\/\/de.wikipedia.org\/wiki\/Entwurfsmuster","sameAs":"http:\/\/www.wikidata.org\/entity\/Q181156","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q181156","author":{"@type":"Organization","name":"Autoren der Wikimedia-Projekte"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2002-10-29T10:17:48Z","headline":"bew\u00e4hrte L\u00f6sungsschablone in der Softwareentwicklung"}</script>
<script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgBackendResponseTime":157,"wgHostname":"mw1351"});});</script>
</body></html>