In der Architektur werden Motive auf unterschiedliche Weise wiederholt, um Muster zu bilden. Am einfachsten ist, dass Strukturen wie Fenster horizontal und vertikal wiederholt werden können (siehe Leitbild). Architekten können dekorative und strukturelle Elemente wie Säulen, Giebel und Stürze verwenden und wiederholen. [23] Wiederholungen müssen nicht identisch sein; Zum Beispiel haben Tempel in Südindien eine ungefähr pyramidale Form, in der Elemente des Musters in fraktaler Weise in verschiedenen Größen wiederholt werden. [24] Ein Entwurfsmuster ist eine präzise Beschreibung einer Best Practice oder eine aufgeschriebene kollektive Erfahrung mehrerer Entwickler. Es gibt eine bestimmte Regel, die definiert, wann ein Entwurfsmuster sich als eins beanspruchen kann: Die Regel von drei. Die Natur bietet Beispiele für viele Arten von Mustern, einschließlich Symmetrien, Bäume und andere Strukturen mit einer fraktalen Dimension, Spiralen, Mäander, Wellen, Schaumstoffe, Fliesen, Risse und Streifen. [2] Einige mathematische Regelmuster können visualisiert werden, und darunter jene, die Muster in der Natur erklären, einschließlich der Mathematik von Symmetrie, Wellen, Mäandern und Fraktalen. Fraktale sind mathematische Muster, die invariant sind.

Dies bedeutet, dass die Form des Musters nicht davon abhängt, wie genau Sie es betrachten. Selbstähnlichkeit findet sich in Fraktalen. Beispiele für natürliche Fraktale sind Küstenlinien und Baumformen, die ihre Form wiederholen, unabhängig davon, welche Vergrößerung Sie sich ansehen. Während selbstähnliche Muster auf unbestimmte Zeit komplex erscheinen können, können die Regeln, die zur Beschreibung oder Herstellung ihrer Bildung erforderlich sind, einfach sein (z. B. Lindenmayer-Systeme, die Baumformen beschreiben). [27] Die berühmten Gang-of-Four-objektorientierten Designmuster: Design Patterns: Elements of Reusable Object-Oriented Software; Erich Gamma, Richard Helm, Ralph Johnson und John Vlissides Obwohl Designmuster praktisch schon seit langem angewendet werden, verharrte die Formalisierung des Konzepts von Designmustern seit mehreren Jahren. [3] Einer der Kämpfe, die ich mit Designmustern hatte, ist ihre Klassifizierung – ich fand oft den GoF-Ansatz zu obskur und nicht immer sehr hilfreich.

Sicherlich sind die Schöpfungsmuster ziemlich einfach: Wie wirst du deine Objekte erschaffen? Dies ist eine Frage, die Sie normalerweise stellen müssen, und der Name bringt Sie direkt zu dieser Gruppe von Mustern. Aber ich finde Struktur und Verhalten weit weniger nützliche Unterscheidungen. Ich war nicht in der Lage, ein Problem zu betrachten und zu sagen: “Klar, du brauchst hier ein strukturelles Muster”, damit mich die Klassifizierung nicht zu einer Lösung führt (ich gebe gerne zu, dass mir hier etwas fehlt). eine einfache Art von emergent Eigenschaft eines Systems, wo das Muster ist eine Eigenschaft des Systems als Ganzes, aber ist nicht eine Eigenschaft von kleinen Teilen des Systems. Anfänglich können Sie sich ein Muster als eine besonders clevere und aufschlussreiche Möglichkeit vorstellen, eine bestimmte Klasse von Problemen zu lösen. Das heißt, es sieht so aus, als hätten viele Leute alle Blickwinkel eines Problems ausgearbeitet und die allgemeinste, flexibelste Lösung dafür gefunden. Das Problem könnte eines sein, das Sie zuvor gesehen und gelöst haben, aber Ihre Lösung hatte wahrscheinlich nicht die Art von Vollständigkeit, die Sie in einem Muster verkörpert sehen werden. Ein Muster kann auch ein Prototyp oder ein Beispiel sein, wie das “Muster”, das wir verwenden, um ein Kleid zu machen. In diesem Fall geht es bei dem Muster nicht um die Beziehungen innerhalb des Kleides, sondern um die Möglichkeit, das Kleid mehrmals zu wiederholen.

Hier existiert die Wiederholung über mehrere Systeme, die Sammlung von Kleidern, die aus dem gleichen Muster gemacht werden, und nicht innerhalb eines einzigen Systems. Motivation: Ein konkretes Szenario, das ein Designproblem veranschaulicht und wie das Muster das Problem löst. Zur Unterstützung bei der Identifizierung und Auswahl von Mustern wurden verschiedene Klassifizierungssysteme vorgeschlagen. [BUS96] verwendet drei Klassifikatoren: Granularität, Funktionalität und strukturierte Prinzipien. Von diesen drei Klassifikatoren ist es ihre Granularitätsklassifikatoren, die populär geblieben ist.