Aus Sicht der internen Architektur und Konzepte kann das aktuelle JavaScript-Framework in 5 Kategorien unterteilt werden.
Die erste ist eine Namespace-orientierte Klassenbibliothek oder ein Framework . Wenn Sie ein Array erstellen, verwenden Sie new Array() und ein Objekt generieren, verwenden Sie new Object(), das vollständig im Java-Stil ist. Daher verwenden wir ein bestimmtes Objekt als Basis und fügen ihm ständig Objekte und sekundäre Objektattribute hinzu, um den Code zu organisieren und ihn wie eine Pyramide aufzubauen. In den frühen Tagen repräsentierte er YUI, EXT (also nicht alle dynamischen Unternehmen). benutze sie immer noch)
Das zweite ist ein klassenfabrikorientiertes Framework . Zu den bekanntesten gehören Prototype, Mootools, Base2 und Ten. Mit Ausnahme des grundlegendsten Namespace sind andere Module im Grunde Klassenobjekte, die von Klassenfabriken abgeleitet sind. Insbesondere kapselt mootools1.3 alle Typen in Typtypen.
Der dritte Typ ist das durch jQuery dargestellte selektororientierte Framework Der gesamte Framework- oder Bibliothekskörper ist ein spezielles Array-ähnliches Objekt, das zentralisierte Operationen erleichtert (da der Selektor plötzlich N Elementknoten auswählt). ), also wurden sie zusammen verarbeitet. Es gibt mehrere tolle Dinge an jQuery:
„Keine neue Instanziierung“-Technologie, $(expr) gibt eine Instanz zurück, es ist kein explizites Neues erforderlich;
Zuerst alle Zugriffsregeln festlegen;
Daten-Caching-System. Auf diese Weise können Sie Knotenereignisse zuweisen.
IIFE wurde ebenfalls entdeckt
Der vierte Typ ist das Framework , das durch Loader verbunden ist. Es verfügt über mehrere Javascript-Dateien, und jede Javascript-Datei wird nach festen Regeln geschrieben. Unter ihnen ist AMD der bekannteste. Die Modularisierung ist ein Zeichen dafür, dass sich JavaScript in Richtung Industrialisierung bewegt. „Die einzige Möglichkeit, komplexe Software zu schreiben, ohne sie unübersichtlich zu machen, besteht darin, klare Schnittstellen zu definieren und mehrere Module zu kombinieren. Auf diese Weise treten die meisten Probleme nur lokal auf, sodass es immer noch Probleme gibt.“ „Es besteht die Hoffnung, dass lokale Verbesserungen und Optimierungen vorgenommen werden können, ohne den gesamten Körper zu beeinträchtigen.“ „Viele unternehmensinterne Frameworks übernehmen grundsätzlich diese Architektur, wie z >
Der fünfte Typ ist MV* mit einer klaren SchichtarchitekturDer erste ist Javascript MVC (jetzt Canjs genannt), backbone.js und spinejs und dann das MVVM-Framework, das eher dazu passt das eigentliche Frontend, zum Beispiel Knockout, Emberm, Angular, Avalon, WinJs. Im MVVM-Framework werden die ursprünglichen DOM-Operationen durch deklarative Bindung ersetzt, die vom Framework frei gehandhabt wird und der Benutzer sich nur auf den Geschäftscode konzentriert.
Hauptfunktionen des Javascript-FrameworksDie Modulaufteilung der jQuery-Framework-Klassenbibliothek basiert hauptsächlich auf dem Quellcode auf Github, bei dem es sich im Grunde um ein Modul und eine Javascript-Datei handelt. Die Idee von jQuery, sich auf DOM-Operationen zu konzentrieren, war von Anfang an klar und wird es auch sein Die Kompatibilität wird auch in Zukunft weiter verbessert. Nach Jahren der Entwicklung konnten jQuery dank der umfangreichen Plug-Ins und vollständigen BUG-Übermittlungskanäle weiter verbessert werden
Prototype.jsDer frühe König ist in vier Teile unterteilt. Spracherweiterung
DOM-Erweiterung
Ajax-Teil
Der aufgegebene Teil, die neue Version, verwendet andere Methoden, um die ursprünglichen Funktionen zu erreichen
Prototype.js verfügt über eine breite Palette an Spracherweiterungen, einschließlich grundlegender Datentypen und „Klassen“, die der Sprache entlehnt sind. Unter diesen ist Enumerable nur ein gewöhnliches Methodenpaket, während ObjectRange, PeriodicalExecuter und Templat mithilfe der Class-Klassenfabrik (aus Community-Beiträgen) erstellt werden.
Da das API-Design sehr elegant ist und es auf der offiziellen Website viele hochwertige Plug-Ins gibt, ist es in der Welle des Widerstands gegen Prototyp-Erweiterungen nicht zurückgegangen.
Rightjs:MochiKit ist ein weiteres Framework für die Prototypenerweiterung. Es ist ein Framework im Python-Stil, das sehr einzigartig ist und zu den zehn besten Frameworks gezählt werden kann.
Zehn: Das von amachang entwickelte und von Prototype.js beeinflusste Javascript-Framework der berühmten japanischen Blog-Community Hatena ist das früheste Beispiel eines Frameworks, das nach Space benannt ist Modulentwicklung.
Nach einem detaillierten Vergleich können wir leicht Rückschlüsse auf die folgenden Framework-Funktionen ziehen
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er gefällt Ihnen allen.