jQuery ist die größte Open-Source-, Browser-übergreifende, CSS3-konforme JavaScript-Bibliothek und hat das clientseitige Scripting zu einem Kinderspiel gemacht.
Die Syntax ist einfach und jQuery kann schöne fast Flash-ähnliche Animationen erzeugen. Im Gegensatz zu Flash ist jQuery auf iOS sichtbar und erzeugt auf einfache Weise dynamische Webseiten.
jQuery erfreut sich immer größerer Beliebtheit, und mit der jüngsten jQuery-Konferenz, die Ende Juni in San Francisco stattfand, scheint es ein günstiger Zeitpunkt zu sein, eine Konversation über jQuery und speziell die Vor- und Nachteile der Verwendung für anspruchsvollere Aufgaben zu beginnen.
Vielleicht ist das Beste an jQuery, dass Sie kein Programmiergenie sein müssen, um Kunden zu begeistern.
Es gibt normalerweise mehr als eine Möglichkeit, eine Katze zu skinieren, aber die Möglichkeit, Plug-Ins auf der Basisbibliothek hinzuzufügen, macht jQuery zu einer unglaublich flexiblen und vor allem schnellen Lösung. In manchen Fällen ist die Verwendung von CSS die bessere Wahl (siehe unten). Wenn Sie jedoch weniger Programmierkenntnisse haben, können Sie mit jQuery Ihre Arbeit erledigen.
Web-Entwicklung ist zu oft ein Prozess für die Zeit und spart Minuten oder sogar Stunden Arbeit ist oft kein Luxus, sondern eine Notwendigkeit. John Resig und die anderen Entwickler hinter dem jQuery-Projekt verstehen wirklich die Zeit / Geld-Gleichung, mit der Webentwickler täglich konfrontiert werden. Eine schnelle Implementierung bedeutet normalerweise mehr Geld in der Tasche.
Die Ausführlichkeit von JavaScript, die Komplexität der CSS-Implementierung und die bekannten Nachteile von Flash machen jQuery zur praktischsten Lösung für viele gängige Probleme wie DOM-Transversale, Ereignisbehandlung, AJAX-Interaktionen und Animationen.
Microsoft und Nokia sind beide hinter jQuery und planen, es in ihre neuen Plattformen zu bündeln, was eine vielversprechende Zukunft vorschlägt. Außerdem steht fast jeder in der Open-Source-Community hinter jQuery, weil:
Open Source ermöglicht schnelles und dynamisches Wachstum. Es gibt keine Lizenzen, über die man sich Sorgen machen muss, und es ist kostenlos. Free bedeutet tatsächlich eine Gemeinschaft von Köpfen, die viel breiter und schlauer ist als die Entwickler, die von einer Firma gefangen gehalten werden.
Der Kern von jQuery wurde von einigen der brillantesten Köpfe des Unternehmens entwickelt und die Entwicklung explodiert förmlich.
Papierschnitt des Geschäftsmannes auf altem Buch über Shutterstock
Open Source hat seine Probleme: Zum Beispiel ist nicht alles nach einem gemeinsamen Standard aufgebaut. Dies ist in Ordnung, wenn Ihr Kunde - oder eher Sie, - die Zeit und das Geld hat, um Optimierungscode zu investieren. Wenn jedoch Zeit, Geld, Fähigkeiten oder alle drei knapp sind, steht dein Rücken an der Wand, wenn etwas schief geht.
Die neueste stabile Version von jQuery (v1.7.2) wurde am 21. März 2012 veröffentlicht, sodass die Möglichkeit, gemeinsame Lösungen für Ihr genaues Problem aus dem Community-Pool zu finden, wahrscheinlich noch einige Zeit knapp wird.
Ein weiteres großes Problem mit jQuery ist, dass es mehrere Versionen gibt. Einige Versionen spielen gut mit anderen und manche nicht. Zum Beispiel ist die Browser-Kompatibilität mit Animationen ein lang bestehendes Problem mit jQuery-Animationen. Sicherzustellen, dass Sie gerade das neueste jQuery-Update ausführen, behebt viele der bekannten Probleme im Zusammenhang mit jQuery-Animationen, aber Sie haben die Wahl, entweder die Bibliothek selbst zu hosten und ständig zu aktualisieren oder die Bibliothek von Google zu laden und eine Inkompatibilität mit Ihrem Code zu riskieren Neue Versionen werden veröffentlicht.
Das AJAX Control Toolkit bietet serverseitige Steuerelemente. Dies gibt einem Entwickler viel mehr Leistung und Flexibilität. Aber das AJAX-Toolkit ist groß und umfangreich im Vergleich zu jQuery. Wie jQuery weiter entwickelt, wird der leichtgewichtige Code wahrscheinlich vor allem mit Microsoft an Bord gewinnen - indem er jQuery unterstützt, wird Microsoft im Grunde seine eigene MicrosoftAjax.js dumpen. Auf der Oberfläche sind die Ergebnisse der Verwendung von jQuery zum Umgang mit XML wirklich cool; Es gibt so wenige Codezeilen, alles scheint einfach zu sein ...
Allerdings ist der Umgang mit AJAX und jQuery ein weit verbreiteter Bereich, in dem die Nachteile, nicht wirklich Programmierer zu sein, oft offensichtlich werden. Zum Beispiel ist es wichtig, die grundlegenden Unterschiede zwischen GET- und POST-HTTP-Anfragen zu verstehen, und dennoch versuchen so viele Entwickler, denen dieses Wissen fehlt, zu erwarten, dass jQuery ihre Flaute aufgreift. Es gibt Fallstricke, die Designern vielleicht nicht bewusst sind, zum Beispiel GET-Anfragen können in der Länge begrenzt sein und viele unerfahrene Programmierer wechseln einfach zu POST, um das Problem zu lösen; Dies kann eine schlechte Idee sein, GET macht keine dauerhaften Änderungen auf dem Server, während POST kann. POST ist kein Befehl, der beliebig wiederholt werden sollte, aber manchmal wird er unwissentlich verwendet.
Ein anderes serverseitiges Problem, das sich auf jQuery bezieht, hebt seinen hässlichen Kopf auf, wenn $ .get anstelle von $ .getJSON (JavaScript-Objektnotation) verwendet wird. Die Verwendung von $ .getJSON für Datentransportprobleme kann alle Arten von Chaos verursachen.
Junge, der vortäuscht, einen riesigen Erdbeweger zu fahren über Shutterstock
Es ist einfach, mit jQuery cool zu sein, es ist nicht so einfach, cool und korrekt zu sein.
Um jQuery und besonders coole jQuery zu verwenden, bedarf es einer Verpflichtung gegenüber der Community. Die Entwicklung ist schnell und das ist aufregend, aber das kann auch wieder zu Zeitproblemen führen. Die Entwicklung ist in einigen Bereichen so schnell, dass, wenn ein Entwickler nicht regelmäßig an der Community teilnimmt, es leicht ist, sich im Staub zu verlieren. Dies ist ein zusätzlicher Zeitaufwand für Entwickler, die Zeit mit dem Versuch haben, ein Geschäft zu führen, sich um mehrere Kunden kümmern, SEO- und Content-Marketing-Kampagnen implementieren und immer noch ihre Kinder sehen.
Es ist notwendig, Ihr Qualifikationsniveau und die Zeit, die erforderlich ist, um alle neuen jQuery-Entwicklungen im Auge zu behalten, realistisch zu bewerten.
Die beiden großen Elefanten im Schrank, die mit jQuery zu tun haben, sind als letzte übrig geblieben: Geschwindigkeit und Spaghetti-Code.
jQuery kann langsam und für Animationen manchmal sehr viel langsamer als CSS sein. In einer großen Anlage zählt jeder winzige Splitter einer Sekunde. Der Grund dafür ist zweierlei: Mehrere DOM-Manipulationen, eine über der anderen, können eine Site verlangsamen; Zweitens verwendet CSS browserseitige Übergänge für Animationen und ist in C ++ geschrieben. Dies macht es etwas schneller als JavaScript.
jQuery Spaghetti, wenn Sie noch nicht darauf gestoßen sind, rechtzeitig. jQuerys größtes Attribut - wie einfach es zu benutzen ist - ist auch seine Achilles-Heilung. jQuery ist eine Bibliothek, die für die Unterstützung von DOM-Transversalen und CSS-Selektoren entwickelt wurde. Dies geschieht mit erstaunlicher Effizienz. Es ist nicht als Framework für die clientseitige Interaktion gedacht. Bei falscher Verwendung, insbesondere bei jQuery-CSS-Selektoren, kann das Endergebnis ein Code sein, der in einer monstergroßen .js-Datei wächst und wächst, bis die Pflege unmöglich wird. Callbacks, ein paar kosmetische Änderungen am Design, generische Namen und die Pflege einer jQuery-Site können zum Albtraum werden.
Vintages Foto von zwei jungen Jungen, die Spaghettis mit ihren Händen essen über Shutterstock
Die jQuery-Community befasst sich mit den Problemen rund um jQuery Spaghetti. Cedric Dugas machte auf Confoo auf jQuery Spaghetti aufmerksam. Er ist unter anderem daran interessiert, Programmierer daran zu erinnern, Best Practices mit jQuery zu verwenden, um Mammutschüsseln mit Spaghetti zu verhindern. Wie ein Frontend-Designer bemerkte, um jQuery wirklich gut zu nutzen, müssen Sie JavaScript verstehen und verstehen. Schneiden und Einfügen hat definitiv seine Nachteile, da es Ergebnisse ohne Verständnis ermöglicht. Dies kann eine Zeitlang funktionieren, kann aber auch alle Arten von langfristigen Wartungsproblemen verursachen.
Mit einem guten Framework können einige der jQuery Spaghetti verhindert werden. Leider sind Frameworks wirklich ein neues Gebiet und es braucht Zeit, um die richtigen Frameworks auszuwählen und sie dazu zu bringen, gut miteinander zu spielen. Auch diese zusätzliche Zeit muss in der jQuery-Gleichung berücksichtigt werden. Im Moment gibt es viele Frameworks, die den clientseitigen MVS-Framework-Bereich dominieren. Backbone.js ist im Moment am beliebtesten, hat aber einige ernsthafte Konkurrenz.
jQuery ist eine der besten Bibliotheken überhaupt und es kann das Schreiben von JavaScript viel einfacher machen. Wie viele andere Werkzeuge wird jQuery jedoch am besten von einem erfahrenen Handwerker eingesetzt. Fallen wir alle unter diese Kategorie? Natürlich nicht. Bedeutet das, dass wir jQuery nicht verwenden sollten? Natürlich nicht. Es deutet nur darauf hin, dass es eine gute Idee ist, wenn man genug Verstand hat, um Hilfe zu bitten, wenn man nicht in der Lage ist, sie zu verstehen.
Verwenden Sie jQuery und kennen Sie auch JavaScript? Müssen Sie die Programmierung verstehen, um jQuery zu implementieren? Lassen Sie uns wissen, was Sie in den Kommentaren denken.