[Java] Zusammenfassung der Entwurfsmuster

Zweck Ich habe alle 23 Java-Entwurfsmuster gelernt und werde sie daher als Memorandum schreiben. Dieser Artikel gibt einen Überblick über alle Entwurfsmuster.

Was ist ein Entwurfsmuster? Eine Sammlung typischer Klassendesignmuster, die für ein effizienteres und universelleres Design entwickelt wurden. Es ist nicht nur in hohem Maße wiederverwendbar und bietet eine bessere Sicht auf den gesamten Code, sondern minimiert auch das Ausmaß der Auswirkungen während der Wartung.

Arten von Entwurfsmustern Das Designmuster ist ・ Objekterzeugung ・ Programmstruktur ・ Verhalten von Objekten Es ist grob in drei Muster eingeteilt.

Objekterstellung Eine Liste und Übersicht der Muster für die Objekterstellung. Alle 5 Typen.
Mustername Übersicht
Factory-Methode Generieren Sie mehrere Unterklassen als Paar.
Abstract Factory Eine Klasse, die sich auf die Factory-Methode spezialisiert hat.
Builder Teilen Sie den Konstruktor in eine Builder-Klasse und eine Director-Klasse und erstellen Sie ein komplexes Anfangswertobjekt.
Prototyp Das Zusammenführen von Klonen vereinfacht die Objekterstellung.
Singleton Stellen Sie sicher, dass zwischen dem Booten und dem Herunterfahren des Systems nur ein Objekt dieser Klasse erstellt wird.

Programmstruktur Eine Liste und Übersicht der Muster im Zusammenhang mit der Struktur des Programms. Alle 7 Typen.
Mustername Übersicht
Adapter Sie können die entsprechende Methode hinzufügen, ohne die vorhandene Klasse zu ändern.
Bridge Erweitern Sie zwei stark verwandte Klassen, indem Sie jede Klasse erben, sodass keine Auswirkungen auftreten.
Composite Eine Reihe von Operationen kann einfach ausgeführt werden, indem eine gemeinsame Schnittstelle für alle Objekte in einer hierarchischen Struktur vorhanden ist.
Decoraror Durch die Implementierung einer gemeinsamen Schnittstelle können Sie mehr Funktionen als die Klassenvererbung hinzufügen.
Fassade Durch Gruppieren von Objekten einer äußerst vielseitigen Klasse ist es einfach, sie unter Entwicklern zu teilen.
Fliegengewicht Durch Zusammenführen der erstellten Objekte kann die zum Erstellen und Beibehalten der Objekte erforderliche Last verringert werden.
Proxy Wenn Sie über eine gemeinsame Schnittstelle verfügen, verknüpfen Sie diese beim Aufruf einer Methode und fügen Sie die Verarbeitung hinzu. Ähnlich wie Decorator.

Objektverhalten Eine Liste und Zusammenfassung von Mustern, die sich auf das Verhalten von Objekten beziehen. Alle 11 Typen.
Mustername Übersicht
Verantwortungskette Abhängig von der Art der Anforderung (Wert des Arguments) wird ein geeignetes Objekt aus mehreren Objekten ausgewählt und verarbeitet.
Befehl Die Anforderungsverarbeitung selbst wird zu einem Objekt gemacht und eine Anforderung mit kompliziertem Inhalt wird gesendet.
Interpreter Da der Interpreter unter Verwendung der Objektstruktur ausgeführt werden kann, die als Ergebnis der Syntaxanalyse erhalten wurde, ist es einfach, die Syntax zu erweitern.
Iterator Die Iterator-Schnittstelle erleichtert den Zugriff unabhängig von der Struktur der Objekte.
Mediator Sie können den Inhalt der Interaktion einfach ändern und Teilobjekte hinzufügen.
Memento Sie können eine Momentaufnahme des Status eines Objekts zu einem bestimmten Zeitpunkt erstellen, speichern und damit den ursprünglichen Status wiederherstellen.
Beobachter Sie können die zu prüfende Klasse und die zu prüfende Klasse einfach wechseln oder erweitern.
Status Auch wenn sich der Status auf komplizierte Weise ändert, kann der Verarbeitungsinhalt einfach umgeschaltet und die Sichtbarkeit des Statusübergangs im Code verbessert werden.
Strategie Sie können den im Programm verwendeten Algorithmus einfach umschalten, während es ausgeführt wird.
Vorlagenmethode Ein großer Prozess wird in mehrere Schritte zerlegt, und der Prozessinhalt wird für jeden Schritt geändert, wobei die Ausführungsreihenfolge der Schritte beachtet wird.
Besucher Auch wenn mehrere Arten von Klassen in der Gruppe von Objekten gemischt sind, kann die Verarbeitung hinzugefügt werden, ohne diese Klassen zu ändern.

Endlich Das Entwurfsmuster ist in Bezug auf Wiederverwendbarkeit und Wartbarkeit sehr gut, aber wenn Sie versuchen, es zwangsweise auf das Entwurfsmuster anzuwenden, kann dies zu kompliziertem Code führen.

Recommended Posts

[Java] Zusammenfassung der Entwurfsmuster
Java-Entwurfsmuster
Zusammenfassung der Java-Unterstützung 2018
Zusammenfassung des Java-Entwurfsmusters
Zusammenfassung von "In Java gelernten Entwurfsmustern (Multithread Edition)" (Teil 10)
Zusammenfassung von "In Java gelernten Entwurfsmustern (Multithread Edition)" (Teil 7)
Zusammenfassung von "In Java gelernte Entwurfsmuster (Multithread Edition)" (Teil 3)
Zusammenfassung von "In Java gelernten Entwurfsmustern (Multithread Edition)" (Teil 6)
Zusammenfassung von "In Java gelernten Entwurfsmustern (Multithread Edition)" (Teil 5)
Zusammenfassung von "In Java gelernten Entwurfsmustern (Multithread Edition)" (Teil 2)
Zusammenfassung von "In Java-Sprache erlernte Entwurfsmuster (Multi-Thread-Edition)" (Teil 1)
Zusammenfassung von "In Java gelernten Entwurfsmustern (Multithread Edition)" (Teil 11)
Zusammenfassung von "In Java gelernten Entwurfsmustern (Multithread Edition)" (Teil 12)
[Java11] Stream-Zusammenfassung - Vorteile von Stream -
[Java] Zusammenfassung der regulären Ausdrücke
[Java] Zusammenfassung der Operatoren (Operator)
Zusammenfassung der Grundlagen der Java-Sprache
Zusammenfassung der Java Math Klasse
[Java] Zusammenfassung der Steuerungssyntax
Zusammenfassung der Java-Fehlerverarbeitung
[Java] Zusammenfassung der mathematischen Operationen
[Für Anfänger] Zusammenfassung des Java-Konstruktors
Zusammenfassung des Pakets [Java Silver Study]
Zusammenfassung der objektorientierten Programmierung mit Java
[Java Silver] Zusammenfassung der Zugriffsmodifikatorpunkte
Zusammenfassung der internen Rookie-Lernsitzung [Java]
Zusammenfassung des Java-Wissens
Java Generics Zusammenfassung
Java-Entwurfsmuster
[java] Zusammenfassung des Umgangs mit char
Zusammenfassung anderer Änderungen als JEP von Java10
[Java] Persönliche Zusammenfassung der bedingten Anweisungen (grundlegend)
Zusammenfassung des Java 8-Dokuments
[Java] [Maven3] Zusammenfassung der Verwendung von Maven3
Java Zusammenfassung der häufig gesuchten Typkonvertierungen
Zusammenfassung des Java 11-Dokuments
Zusammenfassung von Java Math.random und Import (Kalender)
[java] Zusammenfassung des Umgangs mit Zeichenketten
Zusammenfassung der Java-Umgebungseinstellungen für mich [mac]
[Java] Persönliche Zusammenfassung der Klassen und Methoden (grundlegend)
[Java] Zusammenfassung, wie Lambda-Ausdrücke weggelassen werden
Abgelaufene Java-Sammlung
Zusammenfassung der neuen Funktionen von Java 12
[Java] Bedeutung der serialVersionUID
[Zusammenfassung] Zum Beispiel die Vorbereitung der Java-Umgebung
effektive Java 3. Zusammenfassung
NIO.2 Überprüfung von Java
Bewertung von Java Shilber
Zusammenfassung der neuen Funktionen von Java 13
Zusammenfassung der OpenJDK-Quellen
Java - Vereinigung von Kommentaren
JAR-Datei Übersicht
Einführung in Entwurfsmuster (Einführung)
Java statisch [Persönliche Zusammenfassung]
Geschichte der Java-Annotationen
Zusammenfassung zur Informationssicherheit
Zusammenfassung der Verwendung von FragmentArgs
Java (Verdienste des Polymorphismus)
Thread sichere Zusammenfassung ~ Java ~