Cadru JS pentru volume mari de date. Cadre JavaScript: cum să le alegeți. Resurse de învățare

JavaScript este una dintre cele mai populare limbi din lume. Dezvoltatorii web folosesc activ JS pentru a proiecta, anima și crea pagini web. Alături de HTML și CSS, JavaScript poate muta munți, și anume făcând o pagină web interactivă și cât mai interesantă pentru utilizatori.

JavaScript nu se limitează. În schimb, continuă să evolueze. Este cel mai versatil limbaj de programare, care este susținut de capacitatea sa de a dezvolta aplicații pentru o gamă largă de platforme precum Android, Windows și iOS.

Principalele avantaje ale JS:

  1. Flexibilitate - schimbările sunt binevenite.
  2. Fiabilitate – funcționează și se modifică conform priorităților definite.
  3. Scalabilitate.

Să ne uităm la mai multe cadre și biblioteci JavaScript care sunt încă relevante în 2018.

Vue.js

Un cadru de interfață de utilizare open source care continuă să evolueze. Meritat cel mai popular cadru JS conform statisticilor GitHub. Vue.js redă din nou un număr minim de componente și acceptă integrarea bibliotecilor terțe. La fel ca React.js, Vue.js este foarte rapid, folosește Virtual DOM și oferă reactivitate și un cadru bazat pe componente.

Pro:

  1. Integrare ușoară în proiecte folosind alte biblioteci.
  2. Poate funcționa ca un cadru pentru crearea de aplicații avansate cu o singură pagină.

Minusuri:

  1. Sistemul de randare oferă mai puține opțiuni de depanare decât sistemul React echivalent.
  2. Abordarea componentelor din React este mai flexibilă și mai transparentă.

unghiular

Acest cadru JS dezvoltat de Google a stabilit un nou punct de referință. Un cadru indispensabil conceput nu numai pentru dezvoltatorii de software, ci și pentru designeri. AngularJS, Angular 2 și Angular 4 sunt ferm stabilite printre cadrele populare. Aceasta este o platformă deschisă care vă va ajuta să creați aplicații SPA (Single Pages Applications), să implementați legarea bidirecțională pentru a schimba dinamic datele etc.

Pro:

  1. Dezvoltatorii întâmpină mai puține erori, deoarece legarea datelor este construită pe elementele Angular.
  2. Sunt acceptate diverse elemente MVC.
  3. Funcționează bine într-un mediu Agil.

Minusuri:

  1. Vue este mai simplu din punct de vedere al arhitecturii.
  2. API-ul Angular este imens și există multe concepte de înțeles.

jQuery

jQuery și JavaScript au o relație lungă și puternică. Cu o licență MIT, această bibliotecă oferă dezvoltatorilor de aplicații capacitatea de a scrie cod mai scurt, reducând astfel volumul de lucru. Suportă manipularea DOM și, în tandem cu CSS, poate fi util pentru rezolvarea oricărei probleme.

Pro:

  1. Folosit pe scară largă datorită procesării rapide.
  2. Se comportă la fel în toate browserele.

Minusuri:

  1. Multe funcții care facilitează lucrul cu DOM sunt deja implementate nativ.

React.js

Următorul să se alăture ligii este biblioteca UI React.js. Aceasta este inima și sufletul companiilor IT și ale diverselor site-uri web de afaceri. Această bibliotecă JS intră în joc atunci când trebuie să rezolvați problema actualizării parțiale a conținutului unei pagini web. Un instrument ideal pentru proiecte web la scară largă. Funcționalitatea React.js ajută la îmbunătățirea interfeței de utilizare.

Pro:

  1. Gratuit și Open Source.
  2. Poate folosi codul deja scris.
  3. Suportă funcționalitatea DOM virtuală.

Minusuri:

  1. Algoritmul Virtual DOM este inexact și lent.
  2. Necesită programare asincronă complexă atunci când comunicați cu serverul.

Node.js

Această platformă JS pe server va fi următoarea. Instrument receptiv, neblocant și rapid. GoDaddy și Paypal sunt doar câteva dintre marile nume care folosesc Node.js. Este cel mai potrivit pentru aplicațiile legate de I/O și de streaming de date.

Pro:

  1. Un astfel de software poate rula pe mai multe gazde.
  2. Activarea serverelor rapide.

Minusuri:

  1. Nu pentru tranzacții „non-through”.
  2. Nu există nimic de făcut fără teste în Node.js.

Cadru de titan

Titanium este atât un SDK, cât și o platformă cloud pentru construirea/distribuirea de software. Un instrument de înaltă calitate, accesibil și ușor de învățat. Titanium este proiectat pentru dezvoltarea multiplatformă, ceea ce este ideal pentru crearea de aplicații bogate în funcții.

Pro:

  1. Ușor de învățat și implementat.
  2. Structură de înaltă performanță.
  3. Pentru software multiplatform desktop și mobil.

Minusuri:

  1. Nu este cea mai eficientă și originală abordare pentru crearea interfeței de utilizare, spre deosebire de React.

Ember.js

Un alt reprezentant al framework-urilor JavaScript open source. Principalul avantaj este depozitul masiv care poate servi drept dicționar pentru dezvoltarea aplicațiilor. Simplifică crearea de pagini unice scalabile și oferă legare bidirecțională a datelor.

Pro:

  1. Ușor de configurat în sistem.
  2. Implementează interfețe mari de utilizator.

Minusuri:

  1. Structură rigidă a proiectului.
  2. Nu există un set standard de elemente UI.

Acest material este o traducere a articolului. Tradus și actualizat de site

Articolul este dedicat celor mai populare 8 cadre, biblioteci și instrumente JavaScript. Fiecare dintre acestea poate face dezvoltarea aplicației mult mai ușoară dacă utilizați JavaScript.

JS este cel mai popular limbaj de pe web. Dacă ați lucrat vreodată cu JS, știți că este nevoie de mult efort pentru a dezvolta și lansa o aplicație. Prin urmare, atunci când un dezvoltator începător începe să învețe JS, el este atras de cadrele JS.

De ce să folosiți cadre JS? Există trei motive pentru aceasta:

1 Reacționează

React este o bibliotecă JS declarativă și flexibilă care poate fi utilizată pentru dezvoltare interfețe cu utilizatorul. A fost dezvoltat de Facebook, unde, de fapt, este folosit.

Datorită lui React, a fost popularizată ideea de a folosi un DOM virtual. Această tehnologie vă permite să nu lucrați direct cu DOM, ci să utilizați un obiect JS ușor care simulează un arbore DOM. Algoritmul îmbunătățește performanța la nivelul clientului, motiv pentru care React este excelent pentru a crea cel mai mult aplicații rapide cu trafic ridicat (de exemplu, Instagram).

Este una dintre bibliotecile cu cea mai rapidă creștere și poate fi ușor integrată în orice arhitectură (dacă luăm modelul MVC, Model-View-Controller, atunci React este responsabil pentru partea V, prezentare).

Deși React nu este de obicei comparat cu cadrele, se poate observa că, în comparație cu Angular 1.x, oferă câștiguri mai mari de performanță.

Unii oameni consideră că React este dificil de învățat, dar adevărul incontestabil este că vă permite să vă dezvoltați soluții software ușor și simplu și, de asemenea, excelent pentru aplicații complexe, cu sarcini mari.

Companii care folosesc React: Facebook, Instagram, Netflix, Alibaba, Yahoo, E-Bay, Airbnb, Sony.
Pagina GitHub:

2 Vue

Când vorbim despre Vue, cel mai adesea înseamnă a doua versiune - Vue 2, care a apărut cu puțin peste un an în urmă (septembrie 2016) și a primit multe îmbunătățiri față de versiunea anterioară.

Vue este un cadru JS progresiv care a fost lansat în 2014. A fost creat de Evan Yu, care a lucrat anterior la Google și Meteor Development Group (care a creat MeteorJS). Dezvoltarea a fost influențată semnificativ de Angular, Knockout, React și Rivets, iar Vue poate fi doar calea de mijloc care reunește tot ce este mai bun și îl oferă dezvoltatorilor.

De exemplu, dacă comparăm Vue cu Angular, este un cadru mai flexibil și mai simplu (din punct de vedere API), care are și performanțe mai mari.

Pe site-ul oficial, Vue se caracterizează ca fiind accesibil (dacă cunoașteți HTML, CSS și JS, îl puteți învăța foarte repede), versatil (ecosistemul vă permite să scalați de la o bibliotecă la un cadru cu drepturi depline) și productiv (virtual). DOM și capabilități de optimizare).

La fel ca React, Vue este folosit pentru dezvoltarea interfețelor utilizator. Este ușor să îl introduceți treptat într-un proiect existent și se integrează bine cu alte biblioteci.

Vue este excelent pentru a crea aplicații cu o singură pagină - aplicații web găzduite pe o singură pagină, unde totul codul necesar este încărcat împreună cu pagina însăși.

Site-uri web care utilizează Vue: laravel.com, gitlab.com, laracast.com.
Pagina GitHub:

3 AngularJS

AngularJS este unul dintre cele mai faimoase, populare și menționate cadre JS. A fost creat de dezvoltatorii Google și este excelent pentru dezvoltarea de aplicații web.

AngularJS are un set mare de instrumente; este atât un cadru puternic, cât și ușor, care poate facilita foarte mult dezvoltarea aplicațiilor dinamice. AngularJS poate fi descris ca un cadru cu o barieră scăzută la intrare, dar cu funcționalitate bogată. Oricine cunoaște deja JS va putea înțelege cu ușurință AngularJS.

Inițial, AngularJS a fost destinat să fie utilizat pentru dezvoltarea aplicațiilor cu o singură pagină (aplicații cu o singură pagină): conținut suplimentar după deschiderea paginii va fi încărcat după cum este necesar, iar acest lucru poate reduce semnificativ încărcarea pe server.

Acesta este un cadru MVC care oferă o bază bună pentru dezvoltare, motiv pentru care mulți programatori îl iubesc. În special, simplifică foarte mult interacțiunea cu DOM și îmbunătățește testabilitatea.

Site-uri web care utilizează AngularJS: weather.com, freelancer.com, netflix.com.
Pagina GitHub:

4 Coloana vertebrală

Backbone este o altă bibliotecă bine-cunoscută și folosită frecvent în dezvoltare. Se bazează pe modelul de design MVP. Una dintre caracteristicile distinctive este o bibliotecă foarte ușoară, singurele dependențe ale căreia sunt biblioteca Underscore.js (ca motor de șablon) și jQuery (folosit pentru a lucra cu elemente DOM).

La fel ca multe alte biblioteci și cadre, Backbone a fost conceput pentru a crea aplicații cu o singură pagină și pentru a menține sincronizate diferite părți ale aplicației.
Biblioteca interacționează bine cu backend-ul RESTful. Puteți observa, de asemenea, documentația bună a Backbone, care vă permite să înțelegeți rapid această bibliotecă.

Backbone este adesea comparat cu Angular, dar trebuie să înțelegeți că este o bibliotecă și un cadru, astfel încât acestea au punctele lor forte și punctele slabe: Angular este convenabil pentru o dezvoltare rapidă din cutie, iar Backbone va trebui completat cu dvs. propriul cod, dar datorită acestui fapt, Backbone este mai flexibil și un instrument personalizabil pentru a se potrivi nevoilor dvs.

Site-uri web care utilizează Backbone: uvdesk.com/en/, reddit.musicplayer.io, helpscout.net
Pagina GitHub:

5 polimer

Polymer este o bibliotecă concepută pentru crearea și utilizarea componentelor web. Aceste componente web pot fi folosite ca elemente HTML standard pentru a crea aplicații. Cu alte cuvinte, vă puteți crea propriile elemente HTML. Pentru a utiliza Polymer, trebuie să fii familiarizat cu standardul Web Components.

Elementele polimerice sunt împărțite în 8 grupe:

  • Elemente de aplicație - un set de elemente cuplate care pot fi utile în general la dezvoltarea unei aplicații (rutare, stocare de date etc.);
  • Elemente de fier (fostă Elemente de bază) - de bază, elemente de baza pentru dezvoltarea aplicațiilor;
  • Elemente de hârtie - un set de componente UI;
  • Google Web Components - o colecție de componente pentru API-ul Google și serviciile Google;
  • Elemente de aur - un set de componente pentru comerțul electronic;
  • Neon Elements - componente de animație (în acest moment absent);
  • Elemente Platinum - componente pentru transformarea unui site web într-o aplicație (notificări push, utilizare offline, bluetooth etc.);
  • Molecule - moleculele facilitează interacțiunea cu alte biblioteci.

Vedeți lista completă de articole.

Servicii care folosesc polimer: YouTube, Google Earth și Google Music
Pagina GitHub:

6 Ember.js

Ember.js este un cadru JS disponibil gratuit, care poate reduce semnificativ timpul, efortul și resursele necesare dezvoltării oricărei aplicații web.

Unul dintre principiile principale ale Ember.js este rutele. Fiecare rută are un model care conține starea aplicației, precum și un URL care specifică starea curentă a aplicației. Controlerele sunt folosite pentru a adăuga orice logică de afișare la model. În ceea ce privește șabloanele, acestea sunt utilizate în Ember.js pentru a construi codul HTML al aplicației și pentru a încorpora expresii actualizate dinamic în acesta.

Ember.js este posibilitatea de usor personalizarea proiectului și versatilitatea exprimată în posibilitatea arhitecturii componente.

În loc de MVC, cadrul folosește modelul DDAU (Date down, actions up). Acest lucru permite utilizarea unui singur flux de date, făcând codul aplicației mai ușor de citit și îmbunătățind semnificativ performanța.

Ember.js este un cadru puternic și eficient care vă permite să creați aplicații ambițioase.

Companii care folosesc Ember.js: Linkedin, PlayStation, TED, Yahoo!, Twitch.tv
Pagina GitHub:

7 Aurelia

Aurelia a fost creată de Rob Eisenberg, care a lucrat și la Angular, așa că cele două cadre sunt foarte asemănătoare, dar în același timp diferă în unele detalii.
Aurelia este un framework destul de nou care a fost lansat acum câțiva ani. Se numește „cadru UI de generație următoare” și cel mai avansat și mai prietenos cadru front-end de până acum.

Unul dintre principiile Aurelia este „Convenția asupra configurației” (tradus de obicei prin „acorduri de configurare”). Acest principiu este menit să reducă cantitatea de configurare necesară fără a pierde flexibilitatea.

Aurelia acceptă ES6/ES7. Alte caracteristici sunt modularitatea, utilizarea componentelor web și testabilitatea.

Dacă revenim la comparația cu Angular, Aurelia pune accent pe JavaScript Unobtrusive, deci Aurelia are un cod mai compact și mai ușor de întreținut decât Angular.
În ciuda faptului că Aurelia a fost lansată nu cu mult timp în urmă, popularitatea sa este în creștere, iar acest cadru este de interes pentru mulți dezvoltatori.

Aplicații care folosesc Aurelia: inteligent, seecode.run
Pagina GitHub:

Comunitatea JavaScript a experimentat câteva schimbări foarte mari anul trecut. ECMAScript 6 a fost în sfârșit standardizat și publicat, iar majoritatea compilatoarelor și browserelor web populare lucrează din greu pentru a se adapta la toate noile modificări și reglementări. Pentru a înțelege pe deplin o astfel de actualizare uriașă (ultima actualizare ES a fost în 2009), este necesar să vă scufundați într-un ghid solid, pas cu pas, care discută toate aspectele nou standard, iar cel mai bun astfel de ghid pe care l-am putut găsi vine de la Lars Kappert, care și-a distribuit lista de modificări ES6 postarea la Smashing Mag.

În ceea ce privește caracteristicile ES6 implementate în browserele în sine, Mozilla Firefox și Google Chrome sunt în prezent în fruntea pachetului pe care toți ceilalți să le urmărească. Dar JavaScript este mult mai mult decât un standard, unele aplicații și platforme cu adevărat grozave au fost construite și publicate pentru public în acest an, una dintre cele mai recente fiind OS.js - o platformă cloud complet funcțională care integrează funcții pentru computere desktop. în cadrul browser.

JavaScript crește rapid, devine din ce în ce mai nativ, dar cel mai important - devine mai stabil. Numărul de cadre de dezvoltare web care au intrat în sfera JavaScript în ultimii ani a crescut cu adevărat, iar multe dintre cadrele au stabilit deja comunități uriașe în jurul lor, Angular, Meteor și React, pentru a numi câteva. În postarea de astăzi, vom arunca o privire mai atentă asupra celor mai populare cadre JavaScript în prezent și credem cu tărie că aceste cadre vor înregistra multă creștere, implicare și expunere. Vă rugăm să împărtășiți cu noi experiențele dvs. personale cu cadrele pe care le-ați folosit din lista noastră, deoarece ne-ar plăcea să auzim mai multe informații despre cazurile de utilizare pentru fiecare cadru individual.

Cadre JavaScript reactive

Creatorul D3 — Mike Bostock — a făcut un interesant Ask Me Anything (AMA) pe Reddit anul trecut și este plin de întrebări și răspunsuri perspicace care vă vor ajuta să înțelegeți mai bine intenția, viziunea și impulsul din spatele acestui proiect. Trebuie să vă pregătiți petrecând ceva timp digerând toate răspunsurile.

Descarca

Ember

Ember este un cadru modern de dezvoltare web pentru dezvoltatorii ambițioși. Oamenii îl cunosc pentru capacitatea sa de a ajuta dezvoltatorii să construiască aplicații complexe pentru clienți mari. De asemenea, Ember se remarcă prin simplitatea și fluxul de funcționalități pentru a face dezvoltarea aplicațiilor web o experiență lină. Începerea cu Ember este rapidă și nedureroasă, iar mulți dezvoltatori au făcut tot posibilul pentru a crea tutoriale și ghiduri despre cum să începeți cu acest cadru adaptabil.

Ember a reușit să stea departe de termenii și modulele strălucitori care fac ca cadrele moderne să iasă în evidență din mulțime. În schimb, Ember menține funcționalitatea tradițională în timp ce produce puterea necesară pentru construirea de aplicații grozave, cum ar fi cele necesare.

Descarca

Aurelia

Aurelia este un cadru de dezvoltare web auto-proclamat de generația următoare, care se concentrează în primul rând pe transformarea programării (dezvoltare web) într-un proces creativ. Poate că ceea ce face Aurelia următoarea generație este faptul că a fost construită exclusiv cu ES6 (cel mai recent standard JS) și încorporează deja unele dintre caracteristicile ES7 disponibile (următorul standard JS), păstrând în același timp capacitatea de a funcționa pe toate sistemele moderne. browsere. Dezvoltatorii au construit cadrul pe un cadru asemănător unui modul. Aceasta înseamnă că constă din mai multe biblioteci mici și mari pe care le pot folosi fie împreună, fie separat. Desigur, acest lucru depinde de cerințele tipului de aplicație pe care o construiți.

Caracteristicile predominante ale Knockoutjs sunt legăturile declarative, reîmprospătarea automată a interfeței de utilizare, urmărirea dependențelor și funcțiile de șabloane. Relaționați elementele DOM existente cu modelele de date folosind o sintaxă simplă. Ori de câte ori vă actualizați modelele de date, acestea reflectă modificările din interfața de utilizare în timp real. Creați conexiuni între modelele dvs. de date pentru a le combina și transforma. Creați modele complexe de interfață de utilizare ca parte a funcțiilor pe care le utilizați pentru modelele dvs. de date. Cu suportul JavaScript nativ, Knockout va face incredibil de ușor să se integreze cu orice cadru existent. Aceasta îi include pe toți și pe fiecare din turul nostru aici.

Descarca

Keystone

Probabil că ar trebui să menționăm acest cadru într-o listă separată de cadre Node.js (pe care o vom face), dar capacitățile Keystone se remarcă cu adevărat în dezvoltarea web modernă front-end și nu se întâmplă adesea să vedem un cadru cu drepturi depline disponibil. Dezvoltatorii au construit Keystone cu suportul Express.js și MongoDB. Poate activa funcții precum rute dinamice, gestionarea câmpurilor bazei de date, o interfață de utilizare interactivă și dinamică. Această interfață de utilizare poate fi disponibilă chiar și în timp ce vă construiți aplicațiile/sistemele de conținut. De asemenea, poate activa procesarea formularelor, trimiterea de e-mailuri și gestionarea. Acest cadru este ușor de lucrat cu baza de cod. Keystone are mult mai multe funcții de oferit, ceea ce face CMS-ul excelent!

Descarca

Coloana vertebrală

Dacă nu acordați atenție structurii și coaliției codului dvs., va deveni foarte dezordonat. Construirea de aplicații elegante de o pagină și de o singură pagină cu biblioteci tradiționale de dezvoltare web vă poate transforma baza de cod într-o cină spaghetti. Backbone este construit cu ideea că toate funcțiile de pe partea serverului ar trebui să circule printr-un API , minimizând cantitatea de cod care trebuie compusă pentru a obține aceeași funcționalitate complexă a cadrelor web mai sofisticate.

Backbone se numără printre unele dintre cele mai populare cadre de dezvoltare web pentru dezvoltatorii JavaScript și, parțial, din două motive - este ușor de înțeles modulele de utilizare, precum și curba de învățare foarte simplă.

Descarca

Stapes

Stapes este oarecum un succesor al lui Backbone. „Se laudă” cu capacitatea sa de a oferi o experiență cadru excelentă, menținând în același timp doar o gamă de 20 de module active. Accentul său principal este pe crearea de clase, evenimente personalizate și metode de date. Stapes este elementul de bază pentru a vă ajuta să găsiți decalajul dintre o aplicație tradițională și o aplicație minunată! (În propriile lor cuvinte!)

Descarca

Alegerea celui mai bun cadru de dezvoltare JavaScript

Alegerea unui cadru nu ar trebui să se refere niciodată la numărul de caracteristici pe care le poate oferi cadrul particular. Termeni precum „generația următoare” pot suna foarte atrăgătoare, dar ceea ce contează este funcționalitatea reală a cadrului. Utilizarea funcționalității în noul proiect, aplicație și software poate fi, de asemenea, un factor. Unele cadre oferă mai multă experiență, permițând dezvoltatorilor senzaționali cu zeci de ani de experiență să construiască cadrul. Întrucât, cadrele web mai mici se vor concentra pe caracteristici orientate către comunitate pe care le poate încorpora în diferite module cadru.

Vă mulțumim că ați vizitat Colorlib și că ați citit acest articol! Apreciem foarte mult! Acum poate doriți să învățați cum să folosiți gratuit.

Dezvăluire: Această pagină conține link-uri de afiliere externe care pot duce la primirea unui comision dacă alegeți să cumpărați produsul menționat. Opiniile de pe această pagină sunt ale noastre și nu primim bonus suplimentar pentru recenzii pozitive.

În prima parte a studiului comparativ, ne-am familiarizat cu AngularJS, Ember, Backbone.js și noul venit React, am arătat mai multe exemple de cod și am discutat punctele forte și punctele slabe ale acestora. În partea a doua, vom arunca o privire asupra cotei lor de piață, comunității de asistență și modelului de creștere pentru a vă ajuta să faceți alegerea potrivită pentru SPA.

Cercetare de piata

Tabelul de mai jos listează cadrele împreună cu anul lansării, sursa, sponsorii majori și o prezentare generală a celor mai populare site-uri care le folosesc. Este demn de remarcat faptul că fiecare dintre aceste cadre este utilizat de cel puțin un jucător web important:

Această listă demonstrează maturitatea tuturor proiectelor, dar nu oferă o idee despre popularitatea lor generală. Statistici de la roboți de căutare de obicei nu oferă o imagine exactă când despre care vorbim despre cadrele de backend, dar în cazul nostru sunt pe partea clientului, iar această informație pare destul de plauzibilă.

Comparând wappalyzer.com cu similartech.com și builtwith.com, am obținut rezultate foarte diferite. Pentru a le prezenta în cea mai înțeleasă formă, am recalculat cifrele finale ca procent.

Potrivit builtwith.com, React este folosit doar de 74 de ori în primele 1.000.000 de site-uri, în timp ce wappalyzer.com a găsit 18.582 de utilizări ale React pe întregul web. Toate sursele arată că Angular și Backbone sunt cele mai utilizate cadre. Cu toate acestea, similartech.com nici nu le-a menționat pe celelalte două din cauza cotei lor mici de piață. Interesant este că Backbone.js este folosit mai des în TOP 1.000 de site-uri decât în ​​TOP 1.000.000, conform builtwith.com.

În calitate de dezvoltator, ați putea fi interesat să aruncați o privire asupra comunității construite în jurul fiecărui cadru. Poate fi folosit pentru a evalua volumul și viteza de sprijin pe care îl veți putea primi în proiectele viitoare. În acest sens, ar fi indicat să se arate mai multe exemple care să demonstreze activitatea comunităților. Fiecare proiect este membru al GitHub, așa că putem lua câteva statistici orientative de acolo.

Angular a fost câștigătorul primei părți a comparației. Aceasta înseamnă că nu este surprinzător să-l revedem printre cele mai populare cadre. Deși aproape ajunge la cifrele lui Backbone, încă îi bate pe toți concurenții săi de pe site-ul comunității de dezvoltatori în fiecare măsură.

Când vine vorba de comiteri, numărul de comiteri de la implementarea inițială joacă un rol enorm. De exemplu, Ember are cele mai multe comisioane. Impresionant! Dar rețineți că Ember i-a luat 6 ani mai mult pentru a obține aceste commit-uri împreună, comparativ cu React. Cu toate acestea, React are mai multe vedete, în ciuda tinereții sale relative.

Stackoverflow.com pune Angular în cea mai bună lumină, oferindu-i de două ori mai multe publicații decât Backbone și Ember combinate și de 65 de ori mai multe decât React!

Este clar că această felie arată starea lucrurilor doar la un moment dat. Apare o întrebare logică: în care dintre aceste cadre merită să investim în viitorul apropiat?

Google Trends a fost întotdeauna o sursă excelentă de informații despre popularitatea unei anumite probleme, iar studierea acesteia de-a lungul timpului poate prezice cât de populară va fi în viitor.

Cert este că Angular este cel mai popular cadru. De asemenea, se poate observa că popularitatea lui Backbone s-a stabilizat și chiar a scăzut ușor în timp. Același lucru se poate spune despre Ember. Au depășit deja apogeul și își pierd treptat avânt?

Fără îndoială, cea mai izbitoare tendință este demonstrată de React. În timpul creării articolului, această secțiune s-a schimbat de trei ori în 2 luni:

Decembrie 2014: React ajunge treptat din urmă cu Backbone și Ember. => Bravo!

Ianuarie 2015: React reduce decalajul și depășește concurenții. => Impresionant!

Februarie 2015: Popularitatea lui React merge mult înaintea lui Backbone și Ember. Acum există șansa de a concura cu Angular! => Fara cuvinte!

Potrivit Google Trends, React a trecut de la zero la un sfert din popularitatea lui Angular în 1,5 ani. Dacă React continuă să facă progrese în acest fel, probabil că am putea vedea o competiție interesantă între cei doi lideri.

Continuăm comparația dintre principalele cadre Javascript pentru 2011. Am identificat, folosind metode strict științifice, evitând subiectivitatea și expresismul inutil, chiar acești lideri mondiali, ei bine, astăzi îi vom privi direct și îndeaproape - cele șase biblioteci de javascript de top în ordinea descrescătoare a popularității lor.

1 loc:

Dimensiune: 155Kb (versiunea minimă - 72Kb), licență: MIT și GNU GPL, ultima versiune: 1.6 (3 mai 2011)

jQuery este cea mai populară și răspândită bibliotecă JavaScript, concentrându-se pe interacțiunea dintre JavaScript și HTML. jQuery oferă, de asemenea, un API convenabil pentru lucrul cu Ajax. Acest cadru a fost unul dintre primele care au fost implementate cu succes. Un alt secret al popularității acestei biblioteci este implementarea unui echilibru foarte consistent între funcționalitate bună și, în același timp, o încercare de succes de a crea un nucleu universal destul de compact. Dacă adăugăm aici capacitatea de compromis de a extinde foarte simplu funcționalitatea bibliotecii de bază prin includerea de plugin-uri suplimentare (al căror număr depășește acum 1000) - atunci rezultatul este un produs cu adevărat universal, flexibil și rapid.

Pentru cei care doresc să obțină efecte UI mai avansate (UI, interfață cu utilizatorul), cum ar fi suport pentru scalare, sortare, glisare și plasare și widget-uri standard precum marcaje, glisor, bară de progres etc., se recomandă utilizarea bibliotecii aferente , care este specializată în efecte grafice și în crearea de interfețe de utilizator complexe.

Per total, jQuery este foarte benefic pentru proiectele mici și mijlocii, dar poate fi problematic atunci când se dezvoltă proiecte mari, deoarece duce la deficite de design, deși este foarte productiv datorită conținutului și codului său simplu. Ei bine, popularitatea produsului este evidențiată de faptul că foștii concurenți, de exemplu xajax (xajaxproject.org), ei înșiși trec în cele din urmă la folosind jQuery, Microsoft caută să popularizeze utilizarea jQuery cu tehnologiile sale, iar Nokia își anunță intenția de a integra jQuery pentru widget-urile sale mobile.

Digg, BBC, Dell, IsoHunt, Break.com, TinyPic, eMusic, Box.net, Yandex Maps.

Cuvinte cheie pentru SEO: meniul jquery, oigukn, exemple jquery ajax, referință javascript, oigukn

locul 2:

Dimensiune: 278Kb (versiunea minimă - 56Kb), licență: MIT, ultima versiune: 1,7 (22 noiembrie 2010)


Al doilea cadru js cel mai popular, care simplifică foarte mult lucrul cu Ajax și cu alte funcții js avansate. În ciuda disponibilității sale ca bibliotecă de sine stătătoare, este cel mai des folosită de programatori împreună cu Ruby on Rails, Tapestry, script.aculo.us și Rico. Adesea, integrarea strânsă cu larg răspândită Ruby on Rails este cea care se încearcă să explice popularitatea acestuia (deși jQuery deja discutat la nivel de plugin poate interacționa și cu multe platforme populare, de exemplu, cu același Ruby on Rails sau PHP (jquery. hohli.com)).

Din punct de vedere al designului, cadrul este foarte convenabil pentru proiectele de dimensiuni medii, deoarece oferă o modalitate rudimentară de a emula OOP clasic, pe lângă funcționalitatea sa simplă. Performanța sa este oarecum instabilă, adică În unele operații poate fi rapid, în altele performanța scade simțitor. Prototype este unul dintre puținele cadre care nu includ componente UI sau îmbunătățiri UX - pentru a utiliza astfel de efecte, este recomandat să folosiți biblioteca sa copil - script.aculo.us (sau Scripty2), care adaugă un număr mare de efecte grafice, suport pentru glisare și plasare, glisoare, editori Ajax etc.

Exemple de site-uri cunoscute bazate pe acest cadru: CNN, The New York Times, Apple, Fox News Channel, Last.fm, Twitter, Hakia.

Cuvinte cheie pentru SEO: script java, descărcare prototip, javascript js, document js, script js, comparație cadru

locul 3:

Dimensiune: 101Kb (versiunea minimă - 60Kb), licență: MIT, ultima versiune: 1.3 (11 octombrie 2011)


MooTools este un cadru modular, orientat pe obiecte. Este foarte asemănător în abordarea sa asupra designului de bază cu jQuery și Prototype - nu include controale și widget-uri UI, limitându-se la un set minim de efecte și capabilități.

Aceasta este o bibliotecă JavaScript foarte bună - agilă, mică, împărțită în multe module mici, bine documentată. În opinia noastră unanimă, codul de aici este mai clar și mai bine organizat în comparație cu liderul - jQuery. Modularitatea este un mare plus separat: este posibil să compilați biblioteca necesară pentru un anumit scop - deși economiile în kiloocteți în comparație cu jQuery sunt practic nimic. Există o opinie stereotipă conform căreia începătorilor le este mai bine să folosească jQuery, iar programatorilor experimentați le este mai bine să utilizeze MooTools, dar credem că MooTools este mai bine pentru ambele.

În plus, acest cadru conține un plugin foarte interesant MooTools.More.js, care este de fapt ceva mai mult decât un simplu plugin: vă permite să extindeți foarte mult capacitățile bibliotecilor terțe și, în același timp, are suplimente foarte interesante. aplicații pentru manipularea matricelor și a datelor, hashemi, șiruri de caractere etc. Am fost foarte impresionați de capacitatea de a localiza sintaxa engleză a limbajului mootools în sine în orice limbă națională, ceea ce vă permite să programați în ea cât mai confortabil posibil, de exemplu, în rusă.

Exemple de site-uri cunoscute bazate pe acest cadru: MooTools este folosit în Joomla CMS, așa că există o mulțime de astfel de site-uri. Folosit și de (World Wide Web Consortium)

Cuvinte cheie pentru SEO: mootools joomla, mootools jquery, mootools js

locul 4:


Bibliotecă Yahoo! Biblioteca UI (YUI) este un set de utilități și controale scrise în JavaScript și CSS pentru crearea de aplicații web interactive folosind scripting DOM, tehnici DHTML și Ajax. Există două tipuri de componente disponibile în acest cadru: utilități și controale. Utilitățile simplifică dezvoltarea browserului legat de DOM, DHTML și Ajax. Comenzile sunt un set de gata făcute, extrem de interactive elemente vizuale pentru proiectarea paginilor web. Toate aceste elemente sunt create și funcționează numai pe partea clientului și nu necesită o reîmprospătare a paginii pentru a le schimba. Întreaga bibliotecă este distribuită sub o licență BSD și este gratuită pentru toți utilizatorii. YUI a fost creat în comun de ingineri de top Yahoo, precum și de dezvoltatori din întreaga lume. Acum este unul dintre cadrele js de top, complet gata pentru utilizare industrială, unde componentele UI și UX foarte avansate sunt integrate într-un întreg într-o singură livrare, formând un produs complet complet, independent și universal. Dacă adăugăm la aceasta licența sa foarte liberală, atunci popularitatea pe care a câștigat-o pe bună dreptate această bibliotecă este de înțeles, mai ales în evoluțiile comerciale și numeroasele bifurcări unde a fost luată ca bază.

Exemple de site-uri cunoscute bazate pe acest cadru: Yahoo! Cumpărături, Bebo, ImageShack, LinkedIn, Walmart.com.

Cuvinte cheie pentru SEO: descărcați yui, nfrschsch

locul 5:

Dimensiune: 502Kb (versiunea minimă - 84Kb), licență: GPLv3 și comercial, cea mai recentă versiune: 4.0 (26 aprilie 2011)


Proiectul a început ca o încercare de a extinde programul Yahoo! Interfață cu utilizatorul, dar activată în această etapă- acesta este un proiect complet original, practic fără legătură cu YUI. Forța motrice, fondatorul și liderul permanent al proiectului rămâne Jack Slotsum, un cunoscut specialist în comunitatea de programare JavaScript.

ExtJS nu este cel mai productiv dintre cadrele existente, principala sa caracteristică distinctivă este că oferă cel mai apropiat mediu de programare clasică, implementând instrumente foarte avansate de afișare grafică și interacțiune cu utilizatorul într-un mediu Web 2.0. Începând cu versiunea Ext JS 3.0, biblioteca este împărțită logic în două părți: Ext Core (un set de funcții JavaScript care vă permite să creați pagini web dinamice cu procesare unificată în diferite browsere și distribuite sub o licență MIT) și Ext JS (un set de widget-uri pentru crearea de interfețe de utilizator dublă cu licență GPL v3 sau licență comercială).

În general, ExtJS face o impresie foarte favorabilă - acest cadru are capacități grafice foarte bune. Aici linia dintre aplicațiile web și desktop devine din ce în ce mai subțire.

Cuvinte cheie pentru SEO: ext download, ext 4, ext js, ext 3, ext 2, ext yst pfdtltybz

locul 6:

Dimensiune: 123Kb (versiunea minimă - 65Kb), licență: BSD și AFL, ultima versiune: 1.6.0 (15 martie 2011)


Un alt exemplu din lista de cadre populare, care, pe lângă faptul că repetă în mare măsură avantajele analogilor săi, are și propriile sale caracteristici. Printre cele mai importante, aș dori să menționez o încercare foarte serioasă de a obține o independență completă față de fiecare interpret JS specific, pentru care dezvoltatorii fac pur și simplu o treabă titanică de testare și găsire a celor mai universale și simple soluții. Prin urmare, sfera de aplicare a acestui cadru este cât mai larg posibil: acestea nu sunt doar soluții obișnuite pe partea clientului, ci și pe partea serverului și a computerelor desktop - oriunde este posibil să rulați JavaScript. A doua caracteristică tehnică importantă a Dojo este suportul pentru designul cu mai multe puncte de intrare, ceea ce îi oferă multe avantaje tehnice evidente. Aș dori să menționez, de asemenea, Extensiile Dojo pentru Adobe AIR, concepute pentru a ajuta dezvoltatorii să folosească întregul potențial al platformei AIR în aplicațiile care utilizează setul de instrumente Dojo.

Exemple de site-uri cunoscute bazate pe acest cadru: Dogo Toolkit este folosit activ în celebra extensie PHP - Zend Framework, așa că există o mulțime de astfel de site-uri.

Cuvinte cheie pentru SEO: descărcați ghid detaliat dojo, setul de instrumente dojo zend dojo, exemple de dojo

În ultima parte a acestui opus, nu mă voi mai uita la lideri, ci pur și simplu la cadre foarte promițătoare. Ca întotdeauna în articolele mele, încerc să mă uit nu numai la picioarele mele, în timp ce afirm uneori fapte banale, ci și puțin înainte - privind, dacă este posibil, în viitor. Din acest punct de vedere, suplimentarul meu Top 3+ concluzie filozofică asupra subiectului (în special pentru tinerii programatori js).