Ich sehe oft
1. Objektorientierte Programmierung
2. Modulare Programmierung
3. Funktionale Programmierung
Beziehen sich diese drei auf die gleiche Idee? Es geht darum, Probleme zu lösen, wenn sie auftreten, ohne ihnen besondere Aufmerksamkeit zu schenken.
Gibt es einen offensichtlichen Unterschied zwischen den drei Ideen?
Ich sehe oft
1. Objektorientierte Programmierung
2. Modulare Programmierung
3. Funktionale Programmierung
Beziehen sich diese drei auf die gleiche Idee? Es geht darum, Probleme zu lösen, wenn sie auftreten, ohne ihnen besondere Aufmerksamkeit zu schenken.
Gibt es einen offensichtlichen Unterschied zwischen den drei Ideen?
Mein Verständnis:
Objektorientierte Programmierung und funktionale Programmierung verwenden im Allgemeinen unterschiedliche Sprachen und haben unterschiedliche Methoden, zumindest den Schwerpunkt. Wenn Sie beispielsweise Java verwenden, handelt es sich normalerweise um objektorientierte Programmierung. Wenn Sie JS verwenden, handelt es sich normalerweise um funktionale Programmierung.
Modulare Programmierung ist eher eine partielle Organisationsmethode. Wenn die Funktionen komplex sind, ist eine Modularisierung erforderlich, um die Funktionen zu organisieren und einen hohen Zusammenhalt zu erreichen.
Es empfiehlt sich, sich über verschiedene Programmierparadigmen zu informieren und diese auszuprobieren, um ein tieferes Verständnis zu erlangen.
Ob es sich um Objekt- oder Funktionsprogrammierung handelt, die Grundlage ist prozedurale Programmierung.
Prozedurale Programmierung spiegelt sich in strukturierter Programmierung wider:
Funktionen: Trennen Sie die Daten im Programm von den Funktionen, die die Daten verarbeiten
Grundlegend Struktur: sequentielle Struktur, Auswahlstruktur, Schleifenstruktur
Entwurfsmethode: Top-Down, schrittweise Verfeinerung, Modularisierung, strukturierte Codierung
Sprachen, die die Objektprogrammierung unterstützen, bieten jetzt die Kapselung von Klassen
Sprachen, die die funktionale Programmierung unterstützen, spiegeln sich darin wider, dass eine Funktion beispielsweise auch eine Größe ist und als Parameter übergeben werden kann (. Schließung), oder es kann als Hash-Tabellenwert verwendet werden.
Zum Beispiel:
Java erlaubt überhaupt nicht, dass Funktionen als Daten übergeben werden.
Und sowohl JS als auch PHP können Funktionen als Daten übergeben.
Funktionstabelle (Hash-Tabelle + anonyme Funktion):
Der Funktionsname ist der Schlüssel und die anonyme Funktion ist der Wert.
JS (Funktionstabelle zum Organisieren von Funktionen verwenden, die erstklassige Funktionen widerspiegeln):
<code>var func = { foo: function(arg){alert(arg);}, bar: function(arg){alert(arg);} }; func.foo("php"); //func["foo"]("php"); func.bar("best"); //func["bar"]("best");</code>
PHP (Array-orientierte Programmierung: Funktionen und Variablen in Arrays kapseln):
<code>$func = array( 'foo' => function($arg){echo $arg;}, 'bar' => function($arg){echo $arg;} ); call_user_func_array($func['foo'], array('php')); call_user_func_array($func['bar'], array('best'));</code>
So erledigen Sie Ihre Arbeit schneller. Tatsächlich gibt es bei der Arbeit viele Dinge zu beachten. Gib dir einfach eine Minute. Lassen Sie eine Popup-Benachrichtigungsbox schreiben. Müssen Sie noch ein Urteil fällen und ein Paket zusammenstellen? Unmöglich. Beispielsweise verwendet Ihr Unternehmen alle objektorientierte Techniken, aber Sie tun dies nicht, Sie kapseln es nicht, Sie schreiben es einfach nach dem Zufallsprinzip. Ist es notwendig? Dies sind lediglich Ihre Gewohnheiten oder Arbeitsvorgaben, und der Zweck besteht darin, die Arbeit schneller und besser zu erledigen.