Sunt jQuery Users Fools?

Ar trebui să facem asta în aer liber. Se pare că există o credință comună că utilizatorii jQuery sunt ignoranți și, deseori, designeri. De unde a venit acest lucru și este adevărat?


Roots

Comunitatea JavaScript nu a fost aproape la fel de vibrantă și pasionată ca și astăzi.

Să facem o călătorie în jos pe banda de memorie; vom întoarce ceasul de câțiva ani - zilele de jQuery. Lumea JavaScript a fost o scenă foarte diferită de atunci. Comunitatea nu a fost la fel de vibrantă și de pasionată ca și astăzi. Sigur, atunci erau câteva biblioteci, cum ar fi prototipul; dar niciodată nu au reușit să o apuce utilizator obișnuit reflectă felul în care jQuery ar urma în curând. În acel moment, JavaScript era un limbaj foarte urât. Uneori, este ușor să uiți că au existat momente în care dezvoltatorii au refuzat să ia timp necesar pentru a ... știți ... învățați JavaScript! În schimb, ei pur și simplu ar copia și lipiți calea lor, sperând să nu păstrați acea pată JavaScript urâtă pe pantaloni.

DOM

Ce vrei să spui este "Urăsc API-ul DOM".

Ceea ce aceste dependenți de copiere și lipire (am fost unul dintre ei) nu a realizat este că, atunci când spui "Urăsc JavaScript", ceea ce vrei să spui cu adevărat (indiferent dacă îți dai seama sau nu) este: "Urăsc DOM API .“ Nimeni nu poate fi acuzat că se simte așa. Mai ales în acele zile, când chiar și IE5 a fost în vigoare, lucrurile s-ar putea să devină un pic urât. Implementatoarele de browser ale DOM au fost vinovat; nu limba JavaScript. Acest lucru se datorează faptului că într-adevăr nu exista nicio specificație DOM. În consecință, browserele au fost aripite cât mai bine posibil! Noi avem innerHTML nu din cauza unei specificații, ci din cauza faptului că echipa Internet Explorer a decis să o arunce acolo (moment în care ceilalți furnizori de browser-au inversat-o și i-au pus în aplicare în propriile browsere). Dar limba JavaScript, ca un întreg, este solidă.

De fapt, mulți oameni, inclusiv mine, ar merge la fel de departe pentru a spune că, ca limbă, JavaScript este într-adevăr destul de frumos.

jQuery

În acel moment, jQuery a intrat în atmosferă și a început să ia comunitatea de dezvoltare prin furtună. În timp ce alte biblioteci, cum ar fi Prototype, păstrează încă un anumit nivel de complexitate și confuzie pentru noii veniți, jQuery a fost ridicol de ușor de înțeles, datorită faptului că totul este accesibil prin intermediul jQuery obiect (ceva ce este, ironic, adesea criticat).

Trebuie să aplicați o clasă? Uşor; acest lucru este personalizat pentru designeri. jQuery vă permite să utilizați selectorii CSS pe care deja îi cunoașteți pentru a interoga DOM.

 $ ( '# Container') addClass ( 'ahh-da'.);

Fapt amuzant: Din punct de vedere tehnic, deși jQuery a popularizat ideea unui motor selector CSS, a fost în mare parte bazat pe munca lui Dean Edwards.

Apoi, într-un anumit moment, cronologia sa înrăutățit în această realitate alternativă ...

În mod literal, nu ar putea fi mai simplu. Prin abstractizarea codului complex și a quark-urilor de browser, dezvoltatorii ar putea reveni la ceea ce a fost important: crearea de site-uri web și aplicații.

În timp ce comunitatea jQuery a crescut în salturi, biblioteca însăși a continuat să se maturizeze și să se formeze. Lumea era piersică.

Apoi, într-un anumit moment, cronologia s-a înclinat spre această realitate alternativă (bine, nu ca la Doc Brown), unde dintr-o dată, dacă te-ai etichetat ca un utilizator jQuery mândru, anumiți membri ai comunității JavaScript ar simți nevoia să vă stereotipați ca un "designer" ignorant (indiferent dacă ați fost sau nu) - cu siguranță nu este un "dezvoltator de JavaScript". Cum sa întâmplat asta? Dezvoltatorii JavaScript nu folosesc jQuery?


Sarcina de popularitate

Toată lumea are o părere despre lumina reflectoarelor.

Este firesc ca, odată ce ajungeți la o anumită popularitate - pentru lipsa cuvintelor mai bune - vă deschideți la o cantitate incredibilă de control. Toată lumea are o părere despre lumina reflectoarelor, se pare. De exemplu, ați auzit fără îndoială o critică nesfârșită a catolicismului. "Se închină statuilor." Este singurul corp religios cu istorie discutabilă? Sigur nu; dar este cel mai mare. Statele Unite sunt una dintre cele mai puternice țări din lume. Bineînțeles, toată lumea are o opinie. "Americanii sunt ignoranți și grași". Ignorați binele și reflectați pe cel rău.

jQuery este cea mai populară bibliotecă JavaScript, printr-o alunecare de teren. Din nou, toată lumea are o opinie. Am citit nenumărate critici - totul din ceea ce este nu face, la structura bazei de cod. Cu toate acestea, probabil cea mai mare critică a lui jQuery provine dintr-un adevăr simplu: utilizatorii săi, ca medie, sunt mai puțin experimentați cu JavaScript de la vanilla, comparativ cu, de exemplu, Mootools. În timp ce unii consideră că acest lucru este un dezavantaj, îl văd sincer ca pe o forță - într-un mod ciudat.

Faptul că jQuery are mulți utilizatori mai puțin experimentați nu este căderea sa; este o dovadă a apelului său.


Utilizatorii jQuery nu cunosc JavaScript!

Acesta este argumentul pe care îl veți auzi mai mult decât oricare altul. Din nou, un testament pentru jQuery, mulți oameni învață jQuery înainte de JavaScript. Au existat nenumărate dezbateri asupra faptului dacă este un lucru bun sau nu. De fapt, aceste tipuri de discuții se extind la toate abstractizările.

  • În cazul în care designerii folosesc preprocesoare și cadre CSS, respectiv Sass și Compass, înainte de a învăța inscripțiile CSS?
  • Este bine ca un dezvoltator de Ruby să utilizeze CoffeeScript fără a învăța mai întâi JavaScript?
  • Ar trebui să utilizați Modernizr înainte de a învăța cum să scrieți un singur test de caracteristică?
  • Este bine să utilizați CodeIgniter dacă tocmai ați învățat doar PHP?

Personal, simt că cei care cer ca nou-veniții să învețe mai întâi JavaScript înainte de a trece la jQuery pierd un singur lucru: JavaScript și DOM sunt înfricoșătoare! Dacă aruncați specificația ES5 la ei, vor avea un atac de cord, cu excepția cazului în care au un interes real să devină un dezvoltator JavaScript. Mulți oameni trebuie doar să adauge câteva efecte pe site-urile lor. Nu putem stăpâni întotdeauna totul. Sunt oameni răi pentru alegerea priorităților lor? Desigur că nu.

JavaScript și DOM sunt înfricoșătoare!

Comparați acest lucru cu simpla matematică. Când ați învățat prima dată cum să adăugați 2 + 2, ai făcut-o în mod oficial? Sigur că nu am făcut-o; Mi-am folosit degetele. Pun pariu că și tu ai făcut-o. Deși este o simplificare imensă a problemei, nu este jQuery același mod? Oferă noi utilizatori JavaScript cu un punct de intrare simplu și interesant. Vă așteptați sincer să învețe despre închideri și obiecte și variabile globale înainte ca ei să învețe cum să facă ceva distractiv? Haide, vino, acum.

Stricte, "Aflați-o în mod corect sau sunteți prost"punctul de vedere este naiv și nu ia în considerare diferitele stiluri de învățare pe care le avem cu toții.

Eu văd jQuery ca momeală. Țineți-l peste capul utilizatorului, obțineți-i cu adevărat entuziasmați de el și apoi, atunci când se simt gata, aproape întotdeauna se deplasează la învățarea mai multă a JavaScript-ului.

Utilizatorii jQuery scriu codul slab

Încă o dată, aceasta este o generalizare masivă. Unele dintre cele mai mari și mai influente companii din lume folosesc jQuery. Dar da, există o mulțime de începători care sunt încă în proces de învățare. Bine; s-a întâmplat. Codul slab există în fiecare limbă. Am scris eu un pic bun, sunt mândru să spun! Ceea ce putem face cel mai bine este, mai degrabă decât să-i disprețuim public, să oferim sfaturi și sfaturi când putem. Învățăm cu toții. Trebuie într-adevăr să atacăm pe unii, deoarece au priorități și seturi de competențe diferite?

Cu popularitate, vine potențialul pentru sfaturi proaste.

jQuery a reușit să genereze această comunitate incredibil de pasionantă - de la dezvoltatorii de hardcore JavaScript până la designerii care au fost uimiți de cât de ușor a fost de a face treaba. Această pasiune duce ulterior la tutoriale jQuery nenumărate de către membrii comunității - atât bune cât și rele. În timp ce încă învățam jQuery (ceva ce încă mai fac), pot garanta că am oferit niște sfaturi teribile la un moment dat sau altul. Nu este prea diferit de comunitatea PHP. Cu popularitate, vine potențialul pentru sfaturi proaste.


Comunitatea Ruby

Acest tip de învățătură inutilă dăunează comunității.

În comunitatea Ruby, există o dinamică interesantă. Tutorialele sunt, pentru generalizarea lucrurilor, scrise de veterani. Cu alte cuvinte, dacă veți scrie un articol sau o carte despre Ruby on Rails, ar trebui să așteptați pe deplin controlul extrem. Dacă nu aveți un nivel masiv de experiență, nu îndrăzniți să scrie despre asta. În unele privințe, aceasta este o forță. În calitate de student, puteți fi mai ușor sigur că ceea ce învățați este corect. Pe de altă parte, tutorialele PHP sunt peste tot. Scriitorii se concentrează uneori pe nesemnificativ și ignoră ceea ce este important. Veți găsi adesea cea mai buna practica Tutoriale PHP, care descriu dacă este sau nu mai rapid să utilizați citate simple sau ghilimele duble. Desigur, acest tip de învățământ inutil aproape dăunează comunității.

Ce preferi?

E un lucru interesant, trebuie să spun. Ce preferi? O bază mai mică, mai pasională sau una incredibil de populară, constând din toate nivelurile de calificare? Există cu siguranță argumente pro și contra pentru fiecare.

Este incontestabil că mulți dintre noi simt nevoia de a fi blazeri de traseu. Amintiți-vă când părinții au început să se înscrie pentru Facebook? Criticii au declarat pe larg că sfârșitul Facebook era aproape. Odată ce sacrificați exclusivitatea pentru o atracție largă, oamenii instinctiv încep să caute următorul lucru. Dar asta nu sa întâmplat. Același lucru este valabil și pentru jQuery. Sigur, unii utilizatori s-au mutat în cadre mai cuprinzătoare, cum ar fi Dojo. Dar asta este de așteptat și ar trebui să fie un semn de onoare pentru jQuery. Pentru mulți, ciclul de învățare merge astfel:

  • Aflați jQuery; te excitat.
  • Realizați că nu aveți nici o idee despre ce acest se referă la situații diferite. Aflați JavaScript și îmbunătățiți progresiv vechiul cod jQuery.
  • (Opțional) Îmbunătățiți-vă aptitudinile până la punctul în care aveți nevoie de un cadru mai cuprinzător pentru construirea de aplicații mari. Începeți să examinați alte instrumente, cum ar fi Dojo.

Este atât de rău?


Termenele limită reală

Nu e ca și cum am codifica aici binar, oameni buni.

Întotdeauna vor exista avocații care sugerează că nu ar trebui să utilizați o perioadă de bibliotecă. Având în vedere starea curentă a JavaScript și DOM, totuși, sincer, simt că este un sfat rău - în special pentru noii veniți. Nu ar trebui să se aștepte să se lupte cu inconsecvențe frustrante ale browserelor atât de devreme în procesul de învățare. Și, de multe ori, abstracțiile sunt un lucru foarte bun! Nu e ca și cum am codifica aici binar, oameni buni. Când utilizați jQuery sau orice altă bibliotecă populară, beneficiați de nenumărate teste, soluții de bug-uri și cele mai bune minți din industrie.

Acum, cu siguranță, nu sunteți obligat să folosiți cadrul altcuiva. Creați propria dvs. bibliotecă, dacă aveți abilitatea; care funcționează prea! Scopul este acela de a:

  • Normalizați quirks de browser
  • Scrie mai puțin cod
  • Beneficiați de cât mai multe minți posibil
  • Faceți cunoștință cu termenele reale și faceți o treabă

jQuery nu este "o bibliotecă de designeri", ci se adresează designerilor. Nu e așa clasă-bazate pe alte biblioteci, dar acest lucru face ca punctul de intrare pentru noii veniți să fie mult mai nedureros. Deci, ceea ce am terminat este o bibliotecă care a ajutat la reîncarnarea comunității JavaScript. Este suficient de simplu pentru a face apel la primii clienți și suficient de puternic pentru a fi utilizat de cele mai mari companii din lume. De ce este criticat din nou?

Cod