Werden Mixins als Designmuster betrachtet? Strukturell?Wird Mixin als Designmuster betrachtet?
Antwort
Sie sind eine Sprache-Funktion. Ein "Muster" unterscheidet sich von einem Merkmal darin, dass es eine Reihe von Kräften auflöst, die eine Situation auf widersprüchliche Weise beeinflussen können. Features, durch ihre Anwesenheit oder Abwesenheit, neigen dazu, erstellen die Kräfte, die Muster auflösen. Viele Entwurfsmuster (Double Dispatch ist ein gutes Beispiel) kamen um Sprachgrenzen herum (in diesem Fall Methode, die auf ein einzelnes Argument verteilt).
Ja, es ist in Ruby.
Ja, ist es in D.
"Ein Entwurfsmuster zu einem allgemein auftretenden Problem in Software-Design eine allgemeine wiederverwendbare Lösung ist" - Wikipedia
D Maschine kompiliert Code und mit der Verwendung von Mixins können Sie damit Templates noch nützlicher machen als in C++.
Mixins sind keine Designmuster. Die meiste Zeit sind sie Sprachmerkmale !! Zum Beispiel In der Sprache D ist "Mixin" ein Schlüsselwort. Das Verwenden eines Schlüsselworts für seine beabsichtigte Pupose ist kein Muster. Typische Verwendungen von Schlüsselwörtern/Sprachfunktionen können als "Idiome" bezeichnet werden.
Die Hierarchie ist "nichts", Idiom, Design-Muster, Architektur-Muster.
Betrachtet von wer? Ich glaube nicht, dass es eine offizielle Liste von Designmustern gibt. –
natürlich gibt es offizielle Listen von Design-Mustern, beginnen mit "Design Patterns: Elemente von wiederverwendbaren objektorientierten Software" und jüngere Literatur. –
Aber es gibt auch viele andere Design-Muster neben 23 von ihnen im Buch erwähnt.Ich denke, Mixin kann zu einem gewissen Grad als eine Art Design-Muster betrachtet werden. –