Heim  >  Artikel  >  Web-Frontend  >  Vergleichende Analyse von 12 häufig verwendeten MVC-Frameworks in JavaScript_Javascript-Kenntnissen

Vergleichende Analyse von 12 häufig verwendeten MVC-Frameworks in JavaScript_Javascript-Kenntnissen

WBOY
WBOYOriginal
2016-05-16 15:32:191035Durchsuche

Dieser Artikel beschreibt 12 häufig verwendete MVC-Frameworks in JavaScript. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Gordon L. Hempton ist ein in Seattle ansässiger Hacker und Designer, der Monate damit verbracht hat, 12 beliebte JavaScript-MVC-Frameworks zu recherchieren und zu vergleichen und jedes in seinem Blog Die Vor- und Nachteile jedes Frameworks zusammenzufassen, das Endergebnis ist dass Ember.js gewinnt.

Für diesen Vergleich gibt es vier charakteristische Standards, nämlich:

① UI-Bindungen
②Komponierte Ansichten
③ Web-Präsentationsebene
④ Spielt gut mit anderen

Für verschiedene JavaScript-MVC-Frameworks hat Gordon die Vor- und Nachteile zusammengefasst:

1. Backbone.js - Vorteile: starke Community, starke Dynamik; Nachteile: schwache Abstraktion, viele Funktionen müssen dringend hinzugefügt werden.

2. SproutCore - Vorteile: Unterstützung für Bindung, zuverlässige Community, große Anzahl an Funktionen; Nachteile: Überspezifikation, schwierig von unnötigen Funktionen zu entkoppeln.

3. Sammy.js – Vorteile: leicht zu erlernen und einfacher in bestehende Serveranwendungen zu integrieren; Nachteile: zu einfach für den Einsatz in großen Anwendungen.

4. Spine.js - Vorteile: Leichte, vollständige Dokumentation; Nachteile: Das Kernkonzept „Spine“ ist eine asynchrone Benutzeroberfläche, was bedeutet, dass die ideale Benutzeroberfläche niemals verstopft wird Fundament ist defekt.

5. Cappuccino - Vorteile: Großes und durchdachtes Framework, gute Community, tolles Vererbungsmodell. Nachteile: Erstellt von iOS-Entwicklern, Verwendung von JavaScript zur Simulation von Objective-C.

6. Knockout.js – Vorteile: Unterstützung für Bindung, vollständige Dokumentation und Tutorials; Nachteile: Schlechte Bindungssyntax, fehlende einheitliche Ansichtskomponentenhierarchie.

7. Javascript MVC - Vorteile: zuverlässige Community; Nachteile: schlechtes stringbasiertes Vererbungsmodell, zu enge Beziehung zwischen Controller und Ansicht und fehlende Bindung.

8. GWT (Google Web Toolkit) - Vorteile: umfassendes Framework, gute Community, zuverlässiges Java-basiertes Komponentenvererbungsmodell; Nachteile: möglicherweise nicht dem Test der Zeit standhalten, außerdem Java Die Abstraktion auf der Client-Seite ist etwas umständlich.

9. Google Closure – Vorteile: Sehr gutes komponentenbasiertes UI-Kompositionssystem. Nachteile: Fehlende Unterstützung für UI-Bindungen.

10. Ember.js - Vorteile: Sehr umfangreiches Vorlagensystem mit zusammengesetzten Ansichten und UI-Bindung. Nachteile: Relativ neu, Dokumentation ist nicht vollständig genug.

11. Angular.js – Vorteile: Es bietet gute Überlegungen zum Vorlagenumfang und zum Controller-Design, verfügt über ein Abhängigkeitsinjektionssystem und unterstützt eine umfangreiche UI-Bindungssyntax. Nachteile: Die Modularität des Codes ist nicht stark und die Modularität der Ansicht reicht nicht aus.

12. Batman.js - Vorteile: klarer Code, einfache Bindungs- und Persistenzmethoden; Nachteile: Es wird ein Singleton-Controller verwendet.

Nachdem er die Funktionen der oben genannten verschiedenen Javascript-MVC-Frameworks verglichen hatte, glaubte Gordon, dass nur Ember.js seine Anforderungen vollständig erfüllen konnte, und war somit das Framework, für das er sich schließlich entschied.

Haben Sie auch einige JavaScript-MVC-Frameworks verwendet? Willkommen zur Teilnahme an der Diskussion.

Ich hoffe, dass dieser Artikel für alle hilfreich ist, die sich mit der JavaScript-Programmierung befassen.

Stellungnahme:
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