javascript – Frage zum Unterschied zwischen einigen Ideen

WBOY
Freigeben: 2023-03-01 17:24:02
Original
948 Leute haben es durchsucht

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?

Antwortinhalt:

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:

  1. 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.

  2. 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>
Nach dem Login kopieren

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>
Nach dem Login kopieren

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.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!