Muster lietuviškai

Es wurden auch Anstrengungen unternommen, um Entwurfsmuster in bestimmten Bereichen zu kodifizieren, einschließlich der Verwendung vorhandener Entwurfsmuster sowie domänenspezifischer Entwurfsmuster. Beispiele hierfür sind Designmuster für Benutzeroberflächen,[6] Informationsvisualisierung,[7] sicheres Design,[8] „sichere Benutzerfreundlichkeit“[9] Webdesign [10] und Geschäftsmodelldesign. [11] Die jährlichen Sitzungsberichte der Pattern Languages of Programming Conference [12] enthalten viele Beispiele für domänenspezifische Muster. Entwurfsmuster können als strukturierter Ansatz für die Computerprogrammierung zwischen den Ebenen eines Programmierparadigmas und einem konkreten Algorithmus betrachtet werden. Designmuster können den Entwicklungsprozess beschleunigen, indem sie erprobte, bewährte Entwicklungsparadigmen bereitstellen. [4] Für das effektive Softwaredesign müssen Probleme berücksichtigt werden, die möglicherweise erst später in der Implementierung sichtbar werden. Frisch geschriebener Code kann oft versteckte subtile Probleme haben, die Zeit brauchen, um erkannt zu werden, Probleme, die manchmal große Probleme auf der Straße verursachen können. Die Wiederverwendung von Entwurfsmustern hilft, solche subtilen Probleme zu vermeiden, und verbessert auch die Lesbarkeit von Code für Programmierer und Architekten, die mit den Mustern vertraut sind. Die unsachgemäße Verwendung von Mustern kann die Komplexität unnötig erhöhen. [28] Obwohl Designmuster praktisch schon seit langem angewendet werden, schwindet die Formalisierung des Konzepts der Designmuster seit mehreren Jahren. [3] Per Definition muss ein Muster neu in jede Anwendung programmiert werden, die es verwendet. Da einige Autoren dies als einen Schritt zurück von der Software-Wiederverwendung sehen, wie sie von Komponenten bereitgestellt werden, haben Forscher daran gearbeitet, Muster in Komponenten umzuwandeln.

Meyer und Arnout konnten zwei Drittel der versuchten Muster vollständig oder teilweise komponenten. [5] Die Dokumentation für ein Entwurfsmuster beschreibt den Kontext, in dem das Muster verwendet wird, die Kräfte innerhalb des Kontextes, den das Muster zu lösen sucht, und die vorgeschlagene Lösung. [24] Es gibt kein einheitliches Standardformat für die Dokumentation von Entwurfsmustern. Vielmehr wurden eine Vielzahl von verschiedenen Formaten von verschiedenen Musterautoren verwendet. Laut Martin Fowler sind bestimmte Musterformen jedoch bekannter geworden als andere und werden daher zu gemeinsamen Ausgangspunkten für neue Muster-Schreibbemühungen. [25] Ein Beispiel für ein häufig verwendetes Dokumentationsformat ist das von Erich Gamma, Richard Helm, Ralph Johnson und John Vlissides in ihrem Buch Design Patterns. Es enthält die folgenden Abschnitte: Designmuster gewannen in der Informatik an Popularität, nachdem das Buch Design Patterns: Elements of Reusable Object-Oriented Software 1994 von der sogenannten „Gang of Four“ (Gamma et al.) veröffentlicht wurde, die häufig als „GoF“ abgekürzt wird. Im selben Jahr fand die erste Pattern Languages of Programming Conference statt, und im darauffolgenden Jahr wurde das Portland Pattern Repository zur Dokumentation von Designmustern eingerichtet. Der Anwendungsbereich des Begriffs ist nach wie vor umstritten. Bemerkenswerte Bücher im Entwurfsmustergenre sind: Objektorientierte Entwurfsmuster zeigen in der Regel Beziehungen und Interaktionen zwischen Klassen oder Objekten an, ohne die endgültigen Anwendungsklassen oder Objekte anzugeben, die beteiligt sind.

Muster, die mutablen Zustand implizieren kann ungeeignet für funktionale Programmiersprachen, einige Muster können unnötig in Sprachen, die integrierte Unterstützung für die Lösung des Problems, das sie zu lösen versuchen, und objektorientierte Muster sind nicht unbedingt geeignet für nicht-objektorientierte Sprachen. Patterns entstand als architektonisches Konzept von Christopher Alexander bereits 1966 (c.f. „The Pattern of Streets“, JOURNAL OF THE AIP, September 1966, Vol. 32, Nr. 3, S. 273-278). 1987 begannen Kent Beck und Ward Cunningham mit der Idee zu experimentieren, Muster auf Programmieren – speziell Mustersprachen – anzuwenden, und stellten ihre Ergebnisse auf der OOPSLA-Konferenz in diesem Jahr vor. [1] [2] In den folgenden Jahren folgten Beck, Cunningham und andere dieser Arbeit.