jQuery je největší otevřený zdroj, cross-browser, kompatibilní s CSS3, knihovna JavaScript a skriptování na straně klienta.

Syntaxe je jednoduchá a jQuery může vytvářet krásné animace téměř jako blesk. Na rozdíl od aplikace Flash je jQuery zobrazitelný iOS a snadno vytváří dynamické webové stránky.

jQuery se rychle rozšiřuje a díky nedávné konferenci jQuery, která se konala v San Francisku koncem června, se zdá být vhodným časem začít rozhovor o jQuery a konkrétně některé výhody a nevýhody využití pro náročnější pracovní místa.

Dobrý

Snad nejlepší věc na jQuery spočívá v tom, že nemusíte být programovým géniem, který chcete klientům wow.

Obvykle existuje více než jeden způsob, jak zakrýt kočku, ale možnost přidávat zásuvné moduly na základní knihovnu dělá jQuery neuvěřitelně flexibilní a především rychlé řešení. Použití CSS může být v některých případech lepší volbou (viz níže), ale pokud jsou vaše programovací schopnosti omezené, vyberete si nástroj jQuery, který vám pomůže udělat práci.

Vývoj webu je příliš často proces upoutaný na čas a úspora minut nebo dokonce hodiny práce často není luxus, ale nutnost. John Resig a ostatní vývojáři projektu jQuery skutečně chápou rovnici času a peněz, která každodenně čelí vývojářům webu. Rychlá implementace obvykle znamená více dolarů v kapse.

Výslovnost JavaScriptu, složitost implementace CSS a dobře známy nedostatky aplikace Flash činí z jQuery nejpraktičtějším řešením mnoha běžných problémů, včetně překladů DOM, zpracování událostí, interakcí AJAX a animace.

Microsoft a Nokia jsou oba za jQuery a chtějí sdružovat je do svých nových platforem, což naznačuje jasnou budoucnost. Navíc téměř všichni v komunitě open source stojí za jQuery, protože:

  • Podpora komunity je skvělá
  • Způsobuje manipulaci DOM bezbolestnou
  • Hraje s AJAX dobře
  • To dělá základní animaci kus dortu
  • Výběr výběru je bezbolestný
  • K dispozici jsou plug-iny
  • Chyby se rychle identifikují a opravují

Open source umožňuje rychlý a dynamický růst. Neexistují žádné licence, na které byste se měli bát, a je to zdarma. Zdarma se ve skutečnosti promítá do společenství myslí, které je mnohem širší a chytřejší než vývojáři, kteří jsou v zajetí jedné společnosti.

Jádro jQuery bylo postaveno některými z nejvíce brilantních myslí v podnikání a vývoj je doslova vybuchující.

Community

Papír vystřihován podnikatel na staré knize přes Shutterstock

Špatný

Open source má své problémy: například není vše postaveno na společném standardu. To je v pořádku, pokud váš klient - nebo pravděpodobně i vy - máte čas a peníze investovat kód vylepšení. Nicméně, pokud čas, peníze, schopnosti nebo všechny tři jsou nedostatečné, bude vaše zadní část proti stěně, když se něco pokazí.

Nejnovější stabilní verze jQuery (v1.7.2) byla vydána 21. března 2012, takže schopnost nalézt společná řešení pro vaši přesnou záležitost, vyvozená z komunitního fondu, bude pravděpodobně v krátké zásobě po určitou dobu.

Dalším hlavním problémem s jQuery je, že existuje několik verzí. Některé verze se dobře hrají s ostatními a některé ne. Například kompatibilita prohlížečů s animacemi je dlouhodobým problémem s animacemi jQuery. Ujistěte se, že právě používáte nejnovější aktualizaci jQuery, opraví mnoho známých problémů týkajících se animací jQuery, ale necháváte volbu mezi hostováním knihovny sami a neustálou aktualizací nebo načítáním knihovny od společnosti Google a riskujete-li nekompatibilitu s kódem jsou uvolněny nové verze.

Řídicí sada nástrojů AJAX poskytuje ovládací prvky na straně serveru. To dává vývojáři mnohem větší sílu a flexibilitu. Ale nástrojová sada AJAX je velká a objemná ve srovnání s jQuery. Jak jQuery nadále rozvíjí, lehký kód pravděpodobně vyhraje zejména s Microsoftem na palubě - podporou jQuery Společnost Microsoft v podstatě vykládá vlastní MicrosoftAjax.js. Na povrchu jsou výsledky používání jQuery k práci s XML opravdu skvělé; existuje tak málo řádků kódu, všechno se zdá být tak snadné ...

Ovšem manipulace s AJAX a jQuery je společnou oblastí, kde se často projevují nevýhody toho, že ve skutečnosti není programátor. Například porozumění základním rozdílům mezi požadavky GET a POST HTTP je životně důležité, a přesto tolik návrhářů, kteří tuto znalost postrádají, očekávají, že jQuery bude vyzvednout své uvolnění. Tam jsou nástrahy, že návrháři nemusí být vědomi, například GET požadavky mohou být omezené délky a mnoho nezkušení programátoři prostě přepnout na POST vyřešit problém; to může být špatný nápad, GET dělá žádné trvalé úpravy na serveru zatímco POST může. POST není příkaz, který by měl být libovolně opakován, ale někdy je používán nevědomky.

Další problém společného serveru, který se týká jQuery, vyvolává jeho ošklivou hlavu, pokud se použije $ .get místo $ .getJSON (javascript object notation). Nepoužívat $ .getJSON pro problémy s přenosem dat může způsobit nejrůznější záchvaty.

Don't run before you can walk

Mladý chlapec se předstírá, že řídí obřího pozemského hlídače přes Shutterstock

Je snadné jQuery vychladnout, není to tak snadné být cool a správné.

Chcete-li používat jQuery a zvláště cool jQuery dobře vyžaduje závazky pro komunitu. Vývoj je rychlý a to je vzrušující, ale to může opět vést k problémům spojeným s časem. Vývoj je v některých oblastech tak rychlý, že pokud se vývojář neobjeví pravidelně a pravidelně se s ním neúčastní, je snadné se dostat do prachu. Jedná se o dodatečný časový závazek pro vývojáře, kteří se časem pokoušejí provozovat firmu, starat se o více klientů, realizovat kampaně pro SEO a obsahový marketing a stále vidí své děti.

Je třeba realisticky zhodnotit svou úroveň dovedností a čas potřebný k tomu, abyste zůstali na vrcholu nového vývojového týmu jQuery.

A ošklivá

Dva velké slony ve skříni související s jQuery byly ponechány naposledy: rychlost a spaghetti kód.

jQuery může být pomalé a pro animaci někdy mnohem pomaleji než pomocí CSS. Ve velkém složitém místě se počítá každý drobný pramen. Důvod je dvojí: více manipulací DOM, jeden nad druhým může zpomalit stránky dolů; za druhé, CSS používá přechody na straně prohlížeče pro animace a je napsán v jazyce C ++. Toto je o něco rychlejší než JavaScript.

jQuery spaghetti, pokud jste je ještě neskonali, včas to uděláte. Největší atribut jQuery - jak snadné je použít - je také jeho Achilles heal. jQuery je knihovna, která je navržena tak, aby pomáhala s DOM transversy a CSS selektory. To dělá s úžasnou účinností. Není určen k použití jako rámec pro interakci na straně klienta. Při nesprávném použití, zejména jQuery CSS selektory, může být konečným výsledkem kód, který roste a roste v souboru .js, který má velikost Monster, dokud nebude možné udržovat. Hromadné zpětné volání, několik kosmetických změn a generické pojmenování a po silnici, udržování stránky jQuery se může stát noční můrou.

Eating spaghetti

Vintage Fotografie ze dvou mladých chlapců jíst špagety s rukama přes Shutterstock

Společnost jQuery se zabývá problémy jQuery spaghetti. Cedric Dugas zvýšil povědomí o jQuery spaghetti v Confoo. Mezi jinými se věnuje připomenutí programátorům, kteří používají nejlepších postupů s jQuery, aby zabránili mamutovým miskám špaget. Jak uvedl jeden návrhář na front-end, pro opravdové využití jQuery je potřeba znát a pochopit JavaScript. Řezání a vkládání má své nevýhody v tom, že umožňuje výsledky bez porozumění. Zatímco to může pracovat na chvíli, může to také způsobit nejrůznější problémy dlouhodobé údržby.

Použití dobrého rámce může pomoci zabránit některým jQuery spaghetti. Bohužel, rámce jsou opravdu nová oblast a trvá určitý čas, kdy si vyberete správný rámec (rámce) a přimějete je, aby se navzájem dobře hráli. Tento dodatečný čas musí být znovu zahrnut do rovnice jQuery. V současné době existuje mnoho rámců, které chtějí ovládat rozhraní MVS Framework na straně klienta. Backbone.js je v současné době nejoblíbenější, ale má vážnou konkurenci.

celkem

jQuery je jednou z nejlepších knihoven a může usnadnit psaní jazyka JavaScript. Nicméně, stejně jako mnoho nástrojů, jQuery je v nejlepším případě používán odborným řemeslníkem. My všichni spadáme do této kategorie? Samozřejmě že ne. Znamená to, že bychom neměli používat jQuery? Samozřejmě že ne. To jen naznačuje, že mít dostatek smyslu, abyste požádali o pomoc, když jste mimo svou hloubku, je většinou dobrý nápad.

Používáte jQuery a znáte také JavaScript? Potřebujete porozumět programování pro implementaci jQuery? Dejte nám vědět, co si myslíte v komentářích.