Diskussionsmustern FAQ

Diskussionsmustern FAQ
Copyright © State University of New York at Oswego
For original English text, go to: http://g.oswego.edu
Translated by A.Romanova

Verwaltet von Doug Lea. Senden Kommentaren per E-Mail dl@cs.oswego.edu.

Letzte Aktualisierung November 2000.

Das ist keine FAQ im üblichen Sinn. Es enthält sehr kurze Zusammenfassungen von Themen, besprochen in der Diskussionsmustern-Liste, in Frage-und-AntwortAbfolge. Wahl- und Inhaltspunkten widerspiegeln die Neigungen von Maintainer. Diese FAQ werden auf einer unregelmäßigen Basis aktualisiert.

Für die Information über Muster, einschließlich Links der Online-Mustern, Arbeiten über Muster, Beschreibungen von Büchern, die sich mit Mustern befassen, Auflistungen von Konferenzen und Muster –verwandten Adressenlisten, siehe The Patterns Home Page.

1. Warum gibt es da keine gute Definition des Muster-Begriffes?

Warum gibt es da keine gute Definition von den meisten Technikbegriffen? `Muster’ scheint auf mindestens als guter Stand als man `Gegenstand’ sagt. Keiner scheint mit den kurzen Slogan dagegen etwas zu haben “die Lösung eines Problems in einem Zusammenhang”. Jedoch, die Kürze dieses Slogans kann zu Verwirrung führen. Wenn man jeden dieser Begriffe gerade ausbreitet, hilft ein bisschen:

  • Zusammenhang bezieht sich auf einen wiederkehrenden Satz von Situationen, in denen das Muster gilt.
  • Problem bezieht sich auf eine Reihe von Kräften – Absichten und Einschränkungen – die in diesem Zusammenhang vorkommen.
  • Lösung bezieht sich auf eine kanonische Designform oder Designregel, indem jemanden anwenden kann, um diese Kräfte aufzulösen.

Diskussionen mit umfassenderen Definitionen können bei Patterns Home Page und WikiWikiWeb gefunden werden.

2. Können Sie ein anderes besseres Wort als `Muster’ verwenden, damit diese Dinge zu beschreiben?

Sie können sie nennen, was Sie wollen, aber ist zu spät das zu ändern, was die meisten anderen Menschen sie nennen.

3. Ist ein Designmuster verschieden von einem Muster?

Der Begriff eines Musters ist allgemein, und kann in allen Sorten von Zusammenhängen angewandt werden.

Das“ Gang of Four ” (GoF – Gamma, Ruder, Johnson und Vlissides) Designmuster-Buch wird fast völlig auf Mustern gewidmet, die sich mit Mikroarchitekturen (auch bekannt als Gegenstand-Strukturen) – statische und dynamische Beziehungen unter Gegenständen (und/oder ihre Klassen) gestoßen, gefunden in der objektorientierten Entwicklung. Der Begriff Designmuster bezieht sich auf diese Arten von Mustern. Diese sind allgemeinste Arten von Mustern,  beschreibenden in der Literatur.

Einige Menschen verwenden falsch der Begriff Entwurfsmuster, um eine Beziehung auf jede Gegenstand-Struktur zu machen, sogar wenn gewissermaßen ein Muster darstellt. Also bitte nicht machen.

4. Was sonst kann man auf Mustern angewandt werden?

Vorhandene  Software- Beispiele enthälten:

Programmieridiom

Zum Beispiel, besonderen Gebrauch von verschachtelten Klassen in C ++, Schnittstellen in Java, kaskadierenden Anrufen in Smalltalk…

Kodierungsidiom

Zum Beispiel das C Idiom:  while(*dest++ = *src++);

Datenstrukturen

Zum Beispiel, Bäume und Puffer.

Algorithmen

Zum Beispiel, diejenigen für die parallele Verarbeitung.

Protokolle

Zum Beispiel, diejenigen, die in gleichzeitigen Gegenstand-Systemen verwendet sind.

Entwicklung des neuen Fachwerks (Sätze von erweiterbaren Klassen)

Zum Beispiel, diejenigen für UI Werkzeugsätze

Gebrauch von vorhandenen Frameworks

Zum Beispiel OpenDoc, JavaBeans…

Analysemodellen

Zum Beispiel, diejenigen befassen sich mit Buchhaltungsregeln

Systemarchitektur

Zum Beispiel, Wandtafel und Broker-Architekturen

Entwicklungsorganisation

Zum Beispiel, Entwicklung Teamstruktur und Dynamik

Entwicklungsprozess

Zum Beispiel, Schritte und Strategien in der OO Analyse und dem Design.

Zusätzlich sind Muster in mehreren Feldern außerhalb der Softwareentwicklung angewandt worden.

5. Welche ist der Unterschied zwischen einem Muster und einem Kodierungsidiom? Ein Design? Ein oder mehr OMT oder UML Diagramme? Ein Anwendungsfall? Ein Protokoll? Ein Algorithmus? Eine Heuristik? Eine Architektur? Ein Kodierungsstandard? Ein Programmierstil? Eine Entwicklungsmethode?

Ein Muster kann hauptsächlich über eines dieser Dinge sein, aber das Ding allein umfasst kein Muster. Ein Muster beschreibt wie und warum einige von diesen in einem gegebenen Entwicklungszusammenhang zusammen mit der Leitung gelten kann, damit diese anzuwenden.

6. Welche ist der Unterschied zwischen einem Muster und einer Klasse? Ein Mehrwegbestandteil? Ein parametrisierter (Schablone) Klasse? Eine Klassenbibliothek oder Paket? Ein Framework? Ein Werkzeug? Ein Codegenerator?

Ein Muster ist nicht eine Anwendung. Es beschreibt, wenn, warum, und wie man eine Anwendung oder anderen Technikproduktes bilden kann.

Einige (nicht viele) Lösungen sind für die Beschreibung durch Durchführungen verantwortlich (als Klassen, Fachwerk, Werkzeuge, oder was auch immer), die Entwicklern mit allem besorgen, was sie darüber würden wissen oder tun müssen. Trotzdem vertritt der Code selbst nicht das Muster.

7. Welche ist der Unterschied zwischen einem Muster und Anleitung?

Die beschriebene Lösung in einem Muster kann als eine Reihe von Schritten ausgedrückt werden, ähnlich mit denjenigen, gesehen in Anleitung und Kochrezepte. Aber noch einmal bilden diese Schritte nur einen Aspekt eines Musters. Außerdem Muster streben nach dem größeren Spielraum und der Allgemeinheit des Zusammenhangs und der größeren Verbindlichkeit im Identifizieren und der Auflösung von Kräften als gesehen in der typischen Anleitung.

8. Welche ist die Beziehung zwischen der Studie von Mustern und dieser von Bereichsspezifischen Softwarearchitekturen, Softwarewiedergebrauch und anderen Gebieten der Softwaretechnik?

Es scheint, eine Überdeckung zu geben.

9. Wo kann ich veröffentlichte oder Online-Muster ungefähr XXX finden?

Es gibt keine Dokumentationsstelle für Muster, aber es ist nicht zu hart sie zu finden. Hier gibt es einige Startpunkte:

  • Hillside Patterns Home Page
  • Das Buch von Linda Rising – The Pattern Almanac (auch sein Vorgänger, The Patterns Handbook), enthält Verweisungen über die meisten Muster, die veröffentlicht worden sind.
  • Wiki
  • Pattern Depot
  • Open Directory
  • Ihre Lieblingssuchmaschine

10. Wer ist Christopher Alexander?

Alexander ist ein Architekt (im Sinne von Gebäude, nicht Software), wer Muster erfunden hat. Eine kurze Lebensbeschreibung und Verbindungen zu zusammenhängenden Lesungen und Webseiten können in den Nikos Salingaros’s Notes on Christopher Alexander gefunden werden.

11. Welche ist das beste Format für Muster?

Such dir einen aus. Die meisten Muster von Alexander sind von der Form:

     IF   you find yourself in CONTEXT
          for example EXAMPLES,
          with PROBLEM,
          entailing FORCES
     THEN for some REASONS,
          apply DESIGN FORM AND/OR RULE
          to construct SOLUTION
          leading to NEW CONTEXT and OTHER PATTERNS

Es gibt viele stilistische Varianten Keine zwei der vorhandenen Bücher mit Muster verwenden genau das gleiche Format. Alternativen enthalten nur erzählendes Portland Form. Wahrscheinlich kehrt das populärste Format (verwendet im Designmuster-Buch) das um, mit den Designformen und/oder Regeln aufbrechend und dann Probleme, Zusammenhänge und Beispiele beschreibend, für die sie sich anwenden.

Zwischen verschiedene Formen, allgemeine Voraussetzungen für die Struktur und den Inhalt von Mustern enthalten:

Beschreibung von besten Methoden

Oder mindestens die allgemeine akzeptierte Methoden.  Einige Menschen verstehen Muster als ein Schritt zum Aufbau von endgültigen Softwaretechnikhandbüchern.

Passende Allgemeinheit

Beweise, dass das Muster wiederkehrt.  Das verlangt fast immer, dass Sie über mehreren bekannten Gebrauch abstrahieren.  Das kann Erwähnung von Situationen verlangen, in denen das Muster zusammen mit Verweisungen auf alternative Muster nicht gilt.

Anwendungsbereich

Der Zusammenhang indem jemanden das Muster anwenden will, wird völlig beschrieben.  Wenn das passend ist, enthalten Verweisungen auf andere Muster, die normalerweise zu Anwendung dieses Musters führen.

Konstruktivität

Das Muster wird auf einem Weg ausgedrückt, der Leuten erlaubt, ein Beispiel der Lösung zu bilden.  In einigen Fällen kann das eine Reihe von Diagrammen zur Folge haben, wesentliche Beziehungen zeigend.  In anderen kann es eine Reihe von Designschritten zur Folge haben, denen Muster-Benutzer, zusammen mit einer Beschreibung und/oder Beispiel der Lösungsform folgen sollten, wie es erscheinen sollte.

Vollständigkeit

Alle relevanten Kräfte werden beschrieben

Dienstprogramm

Beweise damit die Lösung erfolgreich die Kräfte auflöst, oder wenn sie nur teilweise aufgelöst werden, und/oder wenn sie neue Kräfte, Verweisungen auf zusammenhängende Muster einführen, die daran anwenden können.

Beispiele

Beide die Lösungsschritte illustrieren, sowie diejenigen dokumentieren Nutzung in existierende Software.

Passendes Niveau der Abstraktion

Zum Beispiel “ Hinzufügen eines anderen Niveaus des Umwegs” kann heuristisch nützlich sein, aber es ist wahrscheinlich zu allgemein und vielseitig, um ein gutes Muster zu sein.

Mangel der Originalität

Neue Lösungen vertreten keine Muster.  (Obwohl die Abstraktion, die Integration und das Überarbeiten, das zu Beschreibung als ein Muster führt, neuartig sein können.  Außerdem kann das Muster zu neuartigem Gebrauch führen.  )

Passender Name

Kurze, beschreibende Namen helfen ein geteilter Wortschatz für Entwickler zur Verfügung zu stellen.

Klarheit

Die Präsentation und der Stil erlauben den Leuten leicht zu bestimmen, ob das Muster gilt, und wenn so, wie man es anwendet, so dass sie es selbst nicht wiedererfinden müssen.

12. Was ist eine Kraft?

Der Begriff der Kraft verallgemeinert die Arten von Kriterien, die Softwareentwickler verwenden, um Designs und Durchführungen zu rechtfertigen. Zum Beispiel, in der klassischen Studie von Algorithmen in der Informatik, ist die aufzulösende Hauptkraft Leistungsfähigkeit (Zeitkomplexität). Muster befassen sich mit den größeren, schwierig zu messen und gegensätzliche Sätze von Zielen und Einschränkungen, die in der Entwicklung jedes Kunsterzeugnisses gestoßen sind, das Sie immer bilden. Zum Beispiel:

Korrektheit

  • Vollständigkeit und Richtigkeit der Lösung
  • Statische Typsicherheit, dynamische Typsicherheit
  • Mehrfädige Sicherheit, Lebendigkeit
  • Fehlerrobustheit, Transaktionalität
  • Sicherheit, Robustheit

Mittel

  • Leistungsfähigkeit: Leistung, Zeitkomplexität, Zahl von versendeten Nachrichten, Bandbreitenanforderungen
  • Raumnutzung: Zahl von Speicherzellen, Gegenständen, Fäden, Prozessen, Kommunikationswege, Prozessoren…
  • Inkrementalismus ( auf Anforderung)
  • Politikdynamik:  Gerechtigkeit, Gleichgewicht, Stabilität

Struktur

  • Modularität, Datenkapselung, Kopplung, Unabhängigkeit
  • Erweiterbarkeit: Unterteilung, Abstimmbarkeit, Evolvierbarkeit, Pflegbarkeit
  • Wiederverwendbarkeit, Offenheit, Kombinierbarkeit, Übertragbarkeit, Integrationsfähigkeit
  • Kontextabhängigkeit
  • Interoperabilität
  • …  andere “Möglichkeiten” und “Qualitätsfaktoren”

Aufbau

  • Verständlichkeit, Minimalität, Einfachheit, Anmut.
  • Fehleranfälligkeit der Implementierung
  • Koexistenz mit anderer Software
  • Pflegbarkeit
  • Einfluss auf/von dem Entwicklungsprozess
  • Einfluss auf/von dem Entwicklungs-Team Struktur und Dynamik
  • Einfluss auf/von der Benutzerteilnahme
  • Einfluss auf/von der Produktivität, Terminplanung, Kosten

Einsatz

  • Ethik des Gebrauches
  • Menschliche Faktoren: Erlernbarkeit, Lösbarkeit…
  • Anpassungsfähigkeit an eine verändernde Welt
  • Ästhetik
  • Medizinische und Umweltauswirkung
  • Sozialer, wirtschaftlicher und politischer Einfluss
  • …  anderer Einfluss auf menschliche Existenz

Tres Seaver trägt bei: Der Einsatz ist viel älter als Software: in der Architektur, oder im mechanischen / Tiefbau besteht eine bestimmte Entität in der Beziehung zu einem System von aufeinander wirkenden physischen Kräften. Designs, die jede Kraft und das System als Ganzes nicht auflösen, scheitern (z.B. die Tacoma Narrows Bridge hat gescheitert, das dynamische Laden wegen Winde aufzulösen; das Feuer an Texas A&M hat gescheitert, die Lasten zu berücksichtigen, die von bewegenden Arbeitern veranlasst sind). Durch die Erweiterung müssen Designs andere Anforderungen befriedigen, die im Komplex, und manchmal den ungeahnten Wegen aufeinander wirken; der Begriff “Kraft” wurde erweitert, um diese Fälle zu bedecken.

13. Was ist Kraftauflösung?

Die Beschreibungen von Alexander über Mustern fasst die Idee um, dass ein Muster eine Art von Kräftegleichgewicht vertreten sollte. (Sogar Alexander ist (sogar von sich selbst) kritisiert worden, um man nicht immer das auf eine überzeugende Weise auszuführen.) Das ist derselbe Begriff wie Optimalität, wie zum Beispiel in der Analyse von Algorithmen in der Informatik dargestellt wird, aber angewandt auf die Arten von schwierigen abzuschätzen Kräften, beschriebenen in der vorherigen Frage.

Es ist gewöhnlich unmöglich analytisch “zu beweisen”, dass eine Lösung optimal die Kräfte auflöst. (Tatsächlich ist es hart den Begriff von “Beweis” hier zu definieren, oder sogar zu verstehen, was für ein Gebrauch würde einen Beweis haben.) Andererseits alles ist zu leicht “einfache” Geschichten zu erfinden, die falsches oder irreführendes Grundprinzip für Lösungen zur Verfügung stellen. Sogar die meisten gewissenhaften Autoren von Muster verstehen manchmal nicht völlig, warum eine Lösung funktioniert genauso gut wie es funktioniert, oder seine volle Reihe der Anwendbarkeit schätzt. Wie Ralph Johnson einmal beigetragt hat:

Es ist häufig hart das Problem auszurechnen, das ein Muster behebt. Sie können behaupten es ein Muster vertritt, weil Sie es sehr häufig sehen, und Sie wissen es ein gutes Muster ist, weil das Einführen davon die Welt einen besseren Platz macht. Aber wenn Sie auf die Welt schauen, ist es hart zu erzählen, warum die Dinge so sind, wie sie sind. Ich denke wie wir das Problem herausfinden, dass ein Muster löst, ist durch unsere die Beobachtung, als wir die Dinge entwerfen. Welche sind die Bedingungen, die unseren Gebrauch eines Musters auslösen?

Ich denke den Hauptgrund warum Alexander hat das Problem eines Musters nicht immer beschrieben, ist weil er nicht immer das gewusst hat.  Das ist sicher, warum das GOF-Buch beschreibt das Problem nicht gut.  Es ist ja nicht so, dass das Format die Autoren dazu gebracht hat, die Probleme zu ignorieren, aber ihr Verstehen der Probleme hat sie zu ihrem Format geführt.

Aus diesen Gründen erwartet die Muster-Gemeinschaft die Argumente werden unterstützt mit:

Empirische Beweise für die Güte

Diese ist die Lösung in vielfachen Zusammenhängen verwendet worden, in denen es anwendbar ist.  Die 3. Regel wird manchmal als ein Kriterium verwendet:  behaupten Sie nicht, dass etwas ein Muster ist, wenn Sie von drei unabhängigem Gebrauch nicht wissen.

Vergleiche

Beziehungen zu anderen bekannten Lösungen oder Methoden.  Diese können auch Beispiele einschließen, demonstrieren die Schwächen oder Misserfolge, weil die richtige Lösung nicht angewandt wurde.

unabhängige Autorenschaft

Muster sollten nicht nur von den Leuten geschrieben werden, die zuerst erfunden oder durchgeführt haben.

Rezensionen

Kritiken durch andere Parteien, einschließlich derjenigen vertraut mit der Domain, sowie denjenigen, die nicht sind.  Ein populäres Format für die Muster-Rezension (verwendet bei Pattern Languages of Programs (PLOP) Konferenzen) ist die Autorenwerkstatt.

Bis solche Beweise besorgt werden, wird ein Muster manchmal als Proto-Muster  – ein Kandidat dafür ein Muster zu sein.

14. Was ist Quality Without A Name (QWAN)?

Es gibt keine gute kurze Antwort dafür. Sie brauchen The Timeless Way of Building zu lesen.

Übermäßig-dämliche Muster-Anhänger haben gern zu behaupten, dass Alexander nie über QWAN geschrieben hat. Jemanden sehr verrückt behaupten, dass QWAN die Muster ziemlich mystischen, unheimlich klingenden metaphysischen Geschimpfe bindet, die Sie nennen wollen.

15. Können Muster eine negative Form annehmen, sagend Ihnen was man NICHT tun soll?

Vielleicht ist nicht sehr ideal – würde Sie frei von den unendlich vielen schlechten Designs steuern,  (manchmal genannt Antimuster) die Sie haben könnten, sowie alle Zusammenhänge, in denen es nicht passend ist, ein gegebenes Muster anzuwenden. Aber einige Ideen sind noch so überwiegend, so schlecht, dass sie ausführliche Erwähnung verdienen. Eine Weise das zu machen, ist “Allgemeine Fallen und Stolpersteine” Abteilung in einer Muster-Beschreibung einzuschließen. Beschreibungen von schlechten Lösungen (Einzelgänger) können einen Teil der Motivation, des Grundprinzips oder der Kräfte für eine gute Lösung bilden. Muster können auch Weisen beschreiben, um schlechte Lösungen in gute (manchmal in „Vorher/Nachdem“ oder „Reparatur” Abteilungen) umzugestalten.

16. Können Muster eine Reihe von Alternativlösungen darstellen statt eines?

Vielleicht nicht ideal – jede Lösung sollte mit dem Zusammenhang gebunden werden, in dem sie am besten gilt. Aber manchmal ist das zu hart. Das Erwähnen von Alternativen ist besser als das nicht Erwähnen von ihnen, da es Gerüst für die weitere Verbesserung durch das Entdecken jener Kräfte aufstellt, die Alternativlösungen unterscheiden. Selbst wenn sie unterschieden werden, gibt es auch das stilistische Problem darüber, ob man eine Reihe von Mustern gruppiert, die den größten Teil des Zusammenhangs und Kräfte in derselben Präsentation teilt.

17. Warum geben sich die Mühe in Muster-Schreibung, die gerade meine Großmutter auf den Punkt bringt, diesen Rat mir zu geben?

Weil einige Muster so gut und nützlich sind, dass sogar Ihre Großmutter das weiß. Ihrer Schreibung macht den Zusammenhang, den Wert und die Implikationen des Rates klarer, als Ihre Großmutter wahrscheinlich getan hat.

18. Alle Muster müssen so [Tiefstand / Hochlage / allgemein / spezifisch / abstrakt / bestimmt] als [EINIGE MUSTER] sein?

Natürlich nicht.

19. Welche ist die theoretische Basis von Mustern?

Keine formelle Basis im üblichen Sinn. Muster können Designbegriffe ausdrücken, aus allen Sorten von theoretischen und empirischen Basen zu stammen. Andererseits stammen viele der Begriffe des Muster-geleiteten Designs vom Klassiker und den Arbeiten “nicht so klassisch” auf der “Designtheorie” über verschiedene Felder der Technik. (Siehe die Bibliografien von Arbeiten, die in den Patterns Home Page verzeichnet sind.)

20. Können Muster in [EIN BESONDERER FORMALISMUS ODER NOTATION] ausgedrückt werden?

Sie können versuchen, aber zu denken, dass eine Darstellung einer Design- oder Designregel in einer formellen Notation nicht ein Muster vertritt, wenn es Beschreibungen des Zusammenhangs, das Problem (E) weglässt, löst es, Beweise für die Angemessenheit der Lösung, des Aufbaus oder der Durchführungsrichtlinien oder der Beziehungen mit anderen Mustern.

21. Warum sollte ich Muster verwenden?

Aus dieselben Gründen, dass Sie guten Code wiederverwenden sollten: Wenn sie durch die Kenntnisse und Erfahrung anderer Leute begünstigend, die mehr Anstrengung ins Verstehen von Zusammenhängen gestellt haben, haben Kräfte und Lösungen als Sie getan oder tun wollen. Weiter können Muster mehr wiederverwendbar sein als Code, da sie angepasst werden können, so dass Sie Software bilden können, um besondere spezielle Verhältnisse zu richten, die Sie veranlassen unfähig zu sein, einen vorhandenen Bestandteil wiederzuverwenden.

Muster geben auch Entwickler-Standardsete von Namen und Konzepten, um sich mit allgemeinen Entwicklungsproblemen zu befassen, so Kommunikation erhöhend.

22. Würde es nicht nett sein, einigen Mustern- basierten auf CASE-Werkzeuge zu haben?

Vielleicht, aber die Muster erfüllen die Kommunikation von einer Person zu einem anderen. Falls die  Kommunikation mit anderen Leuten verbessert, ist gut. Aber falls es die Machenschaft von einer Mustern macht, durchgeführt von einem Computer, ist das nicht gut.

23. Wo besteht der Unterschied zwischen einer Mustersprache und einem Satz von Mustern?

Eine Mustersprache stellt ein Satz von zusammenhängenden Mustern dar, alle verteilen etwas von demselben Zusammenhang, und vielleicht unterteilt in Kategorien.

Dieser Begriff ist dank Alexander. Der Verwendung des Begriffes “Sprache” von Alexander ist unkonventionell, aber nicht falsch. Wenn Sie danach schielen und sie überformalisieren, sind Muster-Einträge “Produktionsregeln”. Wenn Sie sich an Ihre Automaten-Theorie erinnern, werden Sie zurückrufen, dass Sätze von Produktionsregeln eine Weise sind, rekursiv aufzählbare Sprachen zu charakterisieren.

24. Warum gibt es dort keinen Mustern mehr über [ALLES]?

Weil Sie keinen geschrieben haben. Wenn Sie sich dafür interessieren, mehr als wahrscheinlich wissen Sie etwas darüber, und dann können Sie Mustern schreiben.

25. Wie beginne ich ein Muster zu schreiben?

Hier gibt es einige allgemeine Vorschläge:

  • Vermeiden über Muster zu schreiben; schreiben nur Muster.
  • Wählen Sie etwas aus, was Sie darüber wissen und dann vielfache Ereignisse und/oder Beschreibungen finden. Oder umgekehrt, wechseln die vorhandene Software für neue mögliche Muster aus.
  • Finden Sie heraus, ob andere Leute ähnliche Muster geschrieben haben
  • Zielen Sie auf Qualität, nicht auf Menge von Mustern.
  • Bestimmen wozu das Muster besteht oder wird verwendet.
  • Wählen ein Format aus, um darüber zu schreiben.
  • Verteilen an anderen (zum Beispiel, durch Webseiten, Muster-Diskussionsgruppen oder Vorlagen zu einer Adressenliste) und erhalten Sie Anmerkungen darüber.
  • Senden Sie das durch das Mittel wie PLOP, wo es in einer Werkstatt eines Schriftstellers nachgeprüft werden kann.
  • Wiederholen Sie ständig und verbessern.

Siehe auch die Ward Cunningham Tipps für Schreibung von Mustersprachen.

26. Wovon kann ich bestimmen, ob eine Idee/Design/Aufbau, die ich besitze, ein Muster vertritt?

Versuchen es als ein Muster zu schreiben.

27. Wie viel Muster gibt es dort?

Einige Menschen denken es gibt relativ wenige unentdeckte Muster, über die fast jeder wissen sollte. Aber einige Menschen denken es gibt sehr viele bereichsspezifischere Muster, die geschrieben werden müssen. Beide können Recht haben. Versuchen Sie, noch einige Muster zu schreiben, nur so können wir herausfinden.

28. Die Existenz von vielen Mustern wird nicht zu Problemen in Entdeckung, Klassifizieren, Indexieren, Verwenden und Aufrechterhalten von ihnen führen?

Vielleicht.

29. Kann ich Muster innerhalb [ETWAS BESONDERE OO ANALYSE UND DESIGNMETHODE] verwenden?

Wahrscheinlich. Obwohl Sie machen werden, könnten Sie nicht mehr die Methode außer seiner Notation folgen.

30. Ist der Gebrauch von Mustern notwendigerweise wiederholend?

Im Prinzip konnten Sie viel glücklich sein ein Problem zu haben, für welche gibt es bereits einen ganzen Satz von Mustern, und in jeder Anwendung eines Musters fließt ins folgende ein, führend zu einem Endprodukt ohne jemals das Zurückverfolgen. Aber die Menschen sind noch nie so glücklich.

31. Gibt es einen empfohlenen Entwicklungsprozess vereinigt mit dem Einsatz von Mustern?

Wahrscheinlich, aber obgleich wir darüber viel besprechen, wissen wir nicht, was es ist. Verwenden Sie Muster, nur so können wir das herausfinden.

32. Hat der Einsatz von Mustern eine Wirkung auf Geschäftsmethoden und Softwarevolkswirtschaft?

Dieselbe Antwort.

33. Wäre es nicht nützlicher Leute zu lehren, Muster zu schreiben, anstatt sie zu lehren, ein Bündel von vorhandenen Mustern zu verwenden?

Beide sind erforderlich. Keiner ist mehr erforderlich.

34. Wie können wir den Einsatz von Mustern institutionalisieren, wo ich arbeite?

Allgemeine Empfehlungen enthälten:

  • Wechseln Sie den besten Code für Muster.
  • Erweitern Sie Designdokumentation und prüfen Sie Methoden nach, um sich auch mit Designmustern zu befassen.
  • Laufen Kurse auf den Gebrauch von vorhandenen Designmustern.
  • Prüfen Sie die vorhandene Muster in einer Workshop eines Schriftstellers nach.
  • Verwenden Sie eine Muster-basierte Stil-Schablone damit Designs zu dokumentieren, so können sie sich zu Mustern entwickeln.
  • Bilden Sie eine Arbeitsgruppe, und treffen Sie sich einmal wöchentlich über Muster zu sprechen.  Sobald es einen Körper von Anhängern gibt, können sie Institutionalisierung fordern.

35. Warum werden die Muster von Alexander nicht allgemein von Architekten verwendet?

Es scheint keinen einzelnen Grund dafür zu geben. Leute zitieren Faktoren einschließlich Zusammenstöße mit langen Handelsbräuchen und mit der Berufskultur von Architekten, Wirtschaftsfaktoren, die Tatsache, dass sich Alexander darauf konzentriert, Menschendesign zu haben, und ihre eigenen Häuser und Unterschiede in der Meinung darüber baut, wie gut oder nützlich die besonderen Muster auf Einer Mustersprache in der Praxis sind.

36. Können Sie Muster in sehr großen Entwicklungsbemühungen verwenden?

Leute haben berichtet, dass sie so tun.

37. Werden Muster überbewertet?

Natürlich. Es ist unmöglich zu vermeiden.

38. Funktionieren Muster wirklich?

Stellen Sie bitte eine konkrete Frage.

Geschrieben von Doug Lea und veröffentlicht in Public Domain.