[JAVA] Verschiedene Designmuster

Es ist ein Memorandum von Designmustern, die in so einfachen Worten wie möglich erklärt werden, damit selbst eine verwirrte Person sie verstehen kann. Ich studiere Designmuster, also werde ich sie hinzufügen, wenn ich es bemerke.

Strategiemuster

Ein Muster, mit dem Sie Teile klassifizieren und austauschen können, bei denen sich der Algorithmus ändert

Dies kann beispielsweise vereinfacht werden, wenn das Verhalten mit einer switch-Anweisung geändert wird oder wenn die Codemenge groß ist. Als Bild ist der [Anrufer] im Spiel ein Auswahlbildschirm für den schwierigen / einfachen Modus, und Argo A und Argo B sind eine schwierige / einfache Verarbeitung.

図2.png

Muster der Vorlagenmethode

Der gemeinsame Teil wird geröstet und zu einer Vorlage (Typ) verarbeitet. Ich glaube, ich habe es schon mal gepostet.

Machen Sie den gemeinsamen Teil zu einer abstrakten Klasse und erstellen Sie verschiedene Instanzen für verschiedene Teile, um deren Verhalten zu ändern. In Bezug auf Yakitori ausgedrückt, wenn es Pfirsiche und Pfirsiche gibt, die gut schmecken, wird die gewöhnliche Hühnchen- [Pfirsich-] und Grillaktion zu einer abstrakten Klasse gemacht. Ein Implementierungsmuster, das den Würzprozess von "Salz" oder "Nicht" trennt, wenn er endgültig abgeschlossen ist. Es ist kein großes Entwurfsmuster, aber ich denke, dass es immer in der allgemeinen Objektorientierung verwendet wird.

Einzelne Tonne Muster

Wahrscheinlich der erste berühmte, der es hört. Begrenzen Sie die Objektinstanziierung auf eins und erstellen Sie nicht mehr als eine. Es gibt verschiedene Implementierungsmethoden. (Auch wenn es den Anschein hat, dass es mehrere gibt, schließt es diejenigen ein, die sich am Ende auf dieselbe Stelle beziehen.)

Singleton-Klasse
-Mitgliedsvariablen
+Instanzerfassung
-wird bearbeitet

Die grundlegendste Implementierungsmethode //直接Qiitaのエディタに書いただけなので後日確認します。。。

public class Singleton {
public:
//static erstellt bei der Klasseninitialisierung nur eine Instanz
static Singleton& getInstance(){
static Singleton myself;
return myself;
}
    //Privat, damit es nicht von außen generiert werden kann
    private:
    Singleton(){} 
}

Recommended Posts

Verschiedene Designmuster
Java-Entwurfsmuster
Einführung in Entwurfsmuster (Einführung)
Studieren Sie GoF-Entwurfsmuster
Einführung in Entwurfsmuster (Builder)
Einführung in Entwurfsmuster (Composite)
Einführung in Designmuster (Fliegengewicht)
Einführung in Entwurfsmuster Prototyp
Einführung in Entwurfsmuster (Iterator)
Warum Designmuster benötigt werden
[Java] Zusammenfassung der Entwurfsmuster
Einführung in Entwurfsmuster (Strategie)
Einführung in Entwurfsmuster (Factory-Methode)
Einführung in Design Patterns (Abstract Factory)
Wichtiges Entwurfsmuster zur Verbesserung der Wartbarkeit
FizzBuzz verschiedene