Heim > Artikel > PHP-Framework > Welche Designmuster verwendet thinkphp5?
1. Einführung in Designmuster
Lassen Sie uns zunächst verstehen, was Designmuster sind:
Entwurfsmuster Es handelt sich um eine Zusammenfassung einer Reihe zuverlässiger Code-Entwurfserfahrungen, die wiederholt verwendet wurden, für andere leicht verständlich und zuverlässig sind.
Designmuster sind kein Patent von Java. Wir können 23 Designmuster auch gut in PHP mit objektorientierten Methoden verwenden.
Welche Beziehung besteht also zwischen der Architektur, dem Framework und den Designmustern, über die wir oft sprechen?
Architektur ist eine Reihe von Systemstrukturen und die Gesamtlösung für das Projekt; halbfertige Software, die wiederverwendet werden kann und spezifischer Programmcode ist. Architektur beinhaltet im Allgemeinen, welche Art von Framework verwendet werden soll, um die Lösung bestimmter Probleme zu beschleunigen und zu optimieren, und gute Framework-Codes nutzen viele Entwurfsmuster sinnvoll.
Verwandte Empfehlungen: „ThinkPHP Tutorial“
2. Verfeinerung mehrerer Prinzipien von Designmustern:
(1) Öffnen -Geschlossenes Prinzip: Module sollten für Erweiterungen offen, für Änderungen jedoch geschlossen sein.
(2) Liskov-Substitutionsprinzip: Wenn die übergeordnete Klasse aufgerufen wird, kann sie ausgeführt werden, wenn sie durch eine Unterklasse ersetzt wird.
(3) Prinzip der Abhängigkeitsinversion: Abstraktion hängt nicht von Details ab, schnittstellenorientierte Programmierung und übergebene Parameter versuchen, auf Klassen auf hoher Ebene zu verweisen.
(4) Prinzip der Schnittstellenisolation: Jede Schnittstelle ist nur für eine Rolle verantwortlich.
(5) Prinzip der Wiederverwendung von Zusammensetzung/Aggregation: Verwenden Sie Zusammensetzung/Aggregation so weit wie möglich und missbrauchen Sie die Vererbung nicht.
3. Welche Funktionen haben Designmuster?
Designmuster können das Problem des Ersetzens von unordentlichem Code lösen und einen guten Codestil bilden. Der Code ist leicht zu lesen und Ingenieure können beim Hinzufügen neuer Funktionen leicht verstehen. Er verfügt über eine starke Skalierbarkeit
Stabil Es hat eine gute Leistung und im Allgemeinen gibt es keine unbekannten Probleme, die nicht durch Entwurfsmuster gelöst werden können:
(1) Entwurfsmuster sind Vorlagen, die zum Organisieren Ihres Codes verwendet werden, und nicht direkt Bibliotheken genannt;
(2) Designmuster sind nicht die effizientesten, aber Lesbarkeit und Wartbarkeit des Codes sind wichtiger
(3) Verfolgen und wenden Sie Designmuster nicht blind an, denken Sie beim Refactoring mehr darüber nach.
4. Klassifizierung von Entwurfsmustern
1. Erstellungsmuster:
Einzelfallmodus, Fabrikmodus (einfache Fabrik, Fabrikmethode, abstrakte Fabrik). ), Erstellermodus, Prototypmodus.
2. Strukturmodi:
Adaptermodus, Bridge-Modus, Dekorationsmodus, Kombinationsmodus, Erscheinungsmodus, Fliegengewichtsmodus, Proxy-Modus.
3. Verhaltensmuster:
Vorlagenmethodenmuster, Befehlsmuster, Iteratormuster, Beobachtermuster, Vermittlermuster, Memomuster, Interpretermuster, Zustandsmuster, Strategiemuster, Chain-of-Responsibility-Modell, Besuchermodell.
Das obige ist der detaillierte Inhalt vonWelche Designmuster verwendet thinkphp5?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!