Im Q & A-Abschnitt dieses Vortrags sagt Douglas Crockford, dass jQuery nicht so gut skaliert wie einige andere beliebte Bibliotheken. Was meint er damit und was macht die anderen Bibliotheken skalierbarer?
Im Q & A-Abschnitt dieses Vortrags sagt Douglas Crockford, dass jQuery nicht so gut skaliert wie einige andere beliebte Bibliotheken. Was meint er damit und was macht die anderen Bibliotheken skalierbarer?
Antworten:
Wenn Sie sich das Video ansehen, spricht er formal nicht über jQuery. Es ist eine schnelle Antwort auf eine häufig gestellte Frage von jemandem nach der Präsentation .... am Ende der Präsentation, ungefähr in Minute 1:29.
Er sagt eine Menge guter Dinge über jQuery. Der Teil, der nicht gut skaliert, ist seiner Meinung nach nicht gut skalierbar für sehr komplizierte Anwendungen (im Vergleich zu anderen Dingen wie YUI). .
Es fällt mir schwer, ohne das Video zu sagen, aber ich vermute, dass jQuery nicht alle Funktionen der meisten anderen Bibliotheken bietet, die die JavaScript-Programmierung erleichtern. Ziel von jQuery ist es, die DOM- Manipulation zu vereinfachen, indem die Adressierung von Elementen über CSS- Selektoren vereinfacht und ein einfaches Framework zum Ändern dieser Elemente bereitgestellt wird. Es bietet einige andere Vorteile wie Ajax- Anforderungen, grundlegende Ereignisverwaltung, Vorlagenerstellung und einige andere rudimentäre Funktionen, aber das war's auch schon.
Andere Bibliotheken wie Prototype , MooTools , Ext JS und Dojo bieten eine Vielzahl weiterer Funktionen zum Erstellen von Objekten, Verwalten von Arrays und Sammlungen, Bearbeiten von Zeichenfolgen und Ausführen aller anderen wichtigen Aufgaben, die wir als Programmierer erwarten.
Kurz gesagt, in jQuery fehlen die Tools, die man sich für umfangreiche JavaScript-Anwendungen wünscht. Es ist aus diesem Grund ziemlich ungewöhnlich, dass JavaScript-schwere Websites mit jQuery gefunden werden. Zum Beispiel basiert Mint.com auf YUI . Apples MobileMe- Webdienst wird mit SproutCore ausgeführt (Apples Hauptsite verwendet Prototype).
Zumindest denke ich, dass er das meint.
Mit jQuery können Sie nicht viel wiederverwenden, wie zum Beispiel MooTools .
Es ist eine Philosophie / Design-Entscheidung: jQuery ist nicht viel Code für Fire-and-Forget-Szenarien.
Wenn Sie unauffällige JavaScript- Erlebnisse erstellen (normalerweise nur Seitenerweiterungen), funktioniert dies sehr gut und erfordert sehr wenig Code. Wenn Sie Google Text & Tabellen erstellen ... nicht so sehr. Sie möchten mehr OOP-Konzepte, die in anderen Projekten zur Verfügung stehen, z. B. Vererbung, schnittstellenähnliche Mechanismen usw.