jQuery er den største open source, cross-browser, CSS3-kompatibel, JavaScript-bibliotek rundt, og det har gjort script-side scripting en leg.

Syntaxen er enkel og jQuery kan producere smukke næsten Flash-lignende animationer. I modsætning til Flash kan jQuery ses på iOS, og det producerer dynamiske websider nemt.

jQuery vokser hurtigt i popularitet, og med den seneste jQuery-konference, der blev afholdt i San Francisco i slutningen af ​​juni, ser det ud til at det er en god tid at starte en samtale om jQuery og specifikt nogle af fordele og ulemper ved at bruge den til mere krævende job.

Den gode

Måske er det bedste ved jQuery, at du ikke behøver at være et programmeringsgeni til wow klienter.

Der er normalt mere end en måde at skure en kat på, men evnen til at tilføje plug-ins oven på basebiblioteket gør jQuery til en utrolig fleksibel og frem for alt hurtig løsning. Brug af CSS kan være det bedre valg i nogle tilfælde (se nedenfor), men hvis dine programmeringsevner er mere begrænsede, vil valg af jQuery hjælpe dig med at få jobbet gjort.

Webudvikling er for ofte en proces, der er fastgjort til tiden og sparer minutter eller endda timers arbejde er ofte ikke en luksus men en nødvendighed. John Resig og de andre udviklere bag jQuery-projektet forstår virkelig den tid / penge ligning, der møder webudviklere dagligt. Hurtig implementering betyder normalt flere dollars i lommen.

Javans vinkel, kompleksiteten af ​​at implementere CSS og de veludbredte ulemper ved Flash gør jQuery den mest praktiske løsning på mange fælles problemer, herunder DOM-transverser, hændelseshåndtering, AJAX-interaktioner og animation.

Microsoft og Nokia er begge bag jQuery og planlægger at pakke det ind i deres nye platforme, der tyder på en lys fremtid fremover. Derudover ligger næsten alle i open source-fællesskabet bag jQuery fordi:

  • Støtten fra samfundet er stor
  • Det gør DOM manipulation smertefri
  • Det spiller godt med AJAX
  • Det gør grundlæggende animation et stykke kage
  • Sæt valg er smertefrit
  • Der er plug-ins
  • Fejl bliver identificeret og rettet hurtigt

Åben kilde tillader hurtig og dynamisk vækst. Der er ingen licenser at bekymre sig om, og det er gratis. Gratis faktisk oversætter til et samfund af sind, der er langt bredere og klogere end udviklerne holdt i fangenskab af et selskab.

Kernen i jQuery er bygget af nogle af de mest strålende sind i virksomheden, og udviklingen er bogstaveligt talt eksploderende.

Community

Papirclips af forretningsmand på gammel bog via Shutterstock

Den dårlige

Open source har sine problemer: for eksempel er ikke alt bygget til en fælles standard. Det er fint, hvis din klient - eller mere sandsynligt, du - har tid og penge til at investere tilpasningskode. Men hvis tid, penge, evner eller alle tre er mangelfulde, vil din ryg være op mod væggen, når noget går galt.

Den seneste stabile version af jQuery (v1.7.2) blev udgivet 21. marts 2012, så evnen til at finde fælles løsninger til dit nøjagtige problem, trukket fra fællesskabspoolen, vil sandsynligvis være mangelfuld i en kommende tid.

Et andet stort problem med jQuery er, at der er flere versioner derude. Nogle versioner spiller godt med andre, og nogle gør det ikke. For eksempel har browserkompatibilitet med animationer været et langvarigt problem med jQuery-animationer. Hvis du sørger for, at du i øjeblikket kører den seneste jQuery-opdatering, løser du mange af de kendte problemer i forbindelse med jQuery-animationer, men du vælger at vælge mellem at være vært for biblioteket selv og løbende opdatering eller indlæser biblioteket fra Google og risikerer uforenelighed med din kode som nye versioner bliver udgivet.

AJAX kontrol værktøjssæt giver server side kontrol. Dette giver en udvikler meget mere magt og fleksibilitet. Men AJAX værktøjssæt er stort og omfangsrig i forhold til jQuery. Som jQuery fortsætter med at udvikle vil den lette kode sikkert vinde ud især med Microsoft ombord - ved at understøtte jQuery Microsoft dræber i det væsentlige deres egen MicrosoftAjax.js. På overfladen er resultaterne af at bruge jQuery til at håndtere XML virkelig cool; der er så få linjer kode, det hele virker bare så nemt ...

Imidlertid er håndtering af AJAX og jQuery et fælles område, hvor ulemperne ved ikke at være programmerer ofte bliver tydelige. For eksempel er forståelse af de grundlæggende forskelle mellem GET og POST HTTP-anmodninger afgørende, og alligevel så mange designere, der mangler denne videnplov, forventer jQuery at afhente deres slæk. Der er faldgruber, som designere måske ikke er opmærksomme på, for eksempel kan GET-anmodninger begrænses i længden, og mange uerfarne programmører skifter simpelthen til POST for at løse problemet. Dette kan være en dårlig ide, GET giver ingen varige ændringer på serveren, mens POST kan. POST er ikke en kommando, der skal gentages vilkårligt, men det bruges uafbrudt nogle gange.

Et andet almindeligt serversidsproblem relateret til jQuery giver sit grimme hoved, hvis $ .get bruges i stedet for $ .getJSON (javascriptobjektnotation). Brug ikke $ .getJSON til data transport problemer kan forårsage alle former for kaos.

Don't run before you can walk

Ung dreng foregiver at køre en kæmpe jordmorder via Shutterstock

Det er nemt at være cool med jQuery, det er ikke så nemt at være køligt og korrekt.

At bruge jQuery og især cool jQuery kræver godt en forpligtelse til samfundet. Udviklingen er hurtig, og det er spændende, men det kan også føre igen til spørgsmål relateret til tiden. Udviklingen er så hurtig på nogle områder, at hvis en udvikler ikke følger og deltager i samfundet regelmæssigt, er det let at komme til venstre i støvet. Dette er en ekstra tidsforpligtelse for udviklere, der er strapped for tid på at forsøge at drive en virksomhed, tage sig af flere kunder, gennemføre SEO og Content Marketing kampagner og stadig se deres børn.

Det er nødvendigt at realistisk evaluere dit færdighedsniveau og den tid, der kræves for at holde sig på top af alle de nye jQuery-udviklinger.

Og den grimme

De to store elefanter i skabet relateret til jQuery er blevet efterladt til sidst: hastighed og spaghetti kode.

jQuery kan være langsom, og til animation er det til tider meget langsommere end at bruge CSS. På et stort komplekst sted tæller hver lille lille snor af et sekund. Årsagen til dette er to gange: flere DOM manipulationer, en oven på en anden kan sænke et websted ned; For det andet bruger CSS browser-sideovergange til animationer og er skrevet i C ++. Dette gør det lidt hurtigere end JavaScript.

jQuery spaghetti, hvis du ikke har stødt på det endnu, vil du i tide. jQuery's største egenskab - hvor let det er at bruge - er også dets achilles helbredelse. jQuery er et bibliotek, der er designet til at hjælpe med DOM transverses og CSS selectors. Det gør det med fantastisk effektivitet. Det er ikke meningen, at det skal bruges som en ramme for kundeinteraktion. Når det bruges forkert, især jQuery CSS selectors, kan slutresultatet være kode, der vokser og vokser i en monster-størrelse .js-fil, indtil det bliver umuligt at vedligeholde. Kast i tilbagekaldelser, et par kosmetiske designændringer og generisk navngivning og ned ad vejen. Opretholdelse af et jQuery-websted kan blive et mareridt.

Eating spaghetti

Vintage Foto af to unge drenge spiser spaghetti med deres hænder via Shutterstock

JQuery-samfundet tager fat på problemerne omkring jQuery spaghetti. Cedric Dugas øgede bevidstheden om jQuery spaghetti på Confoo. Han er blandt andet dedikeret til at minde programmører om at bruge bedste praksis med jQuery for at forhindre mammutskåle af spaghetti. Som en front-end designer kommenterede, at virkelig bruge jQuery godt, skal du kende og forstå JavaScript. Skæring og indsætning har helt sikkert sine ulemper ved at det muliggør resultater uden forståelse. Selv om dette kan fungere i et stykke tid, kan det også forårsage alle former for langsigtede vedligeholdelsesproblemer.

Brug af en god ramme kan hjælpe med at forhindre nogle af jQuery spaghetti. Desværre er rammerne virkelig et nyt område, og det tager tid at vælge de rigtige rammer og få dem til at spille pænt med hinanden. Igen skal denne ekstra tid indregnes i jQuery-ligningen. I øjeblikket er der mange rammer, der søger at dominere klientsiden MVS Framework Space. Backbone.js er den mest populære i øjeblikket, men det har nogle alvorlige konkurrence.

Sammenfattende

jQuery er et af de bedste biblioteker derude, og det kan gøre skrive JavaScript meget nemmere. Men ligesom mange værktøjer, er jQuery bedst brugt af en ekspert håndværker. Går vi alle under denne kategori? Selvfølgelig ikke. Betyr det, at vi ikke bør bruge jQuery? Selvfølgelig ikke. Det foreslår bare, at det er en god idé at have tilstrækkelig mening til at bede om hjælp, når du er ude af din dybde.

Bruger du jQuery og kender du også JavaScript? Har du brug for at forstå programmering for at implementere jQuery? Lad os vide, hvad du synes i kommentarerne.