Dezvoltatori precum Samer Buna, Parashuram N, Neehar Venugopal, Cameron Westland și Jay Phelps au discutat recent cu echipa noastră noile evoluții în JavaScript.

Videoclipurile prezentate vă vor oferi o idee despre ceea ce se întâmplă cu GraphQL, Redux-Observable, React Fiber, Propunerea de import TC39 și o introducere a noului termen „Extensible React”.

GraphQL și ReactJS

Samer Buna despre valoarea GraphQL, abonamentele GraphQL, ReactJS

Samer Buna vorbește despre GraphQL și ne dă o idee despre cât de grozav este să lucrezi cu limbajul de interogare și cât de perfect potrivit este pentru React. Limbajul descrie foarte clar cerințele exacte de date și optimizează procesul de comunicare a datelor între aplicațiile front-end și server. În general, este un limbaj și un înlocuitor mai bun decât API-ul REST.

Samer introduce, de asemenea, abonamente GraphQL care oferă comunicare în timp real, Samer vorbește și despre aplicațiile emergente care permit preluarea imediată a API-ului grafic din cloud. Dacă o persoană dorește să-și găzduiască datele în cloud, acum există aplicații care pot fi folosite pentru a defini modele și pentru a obține imediat API-ul grafic necesar. Această dezvoltare înlătură barierele de intrare pentru dezvoltatorii începători, deoarece aceștia nu mai trebuie să scrie aplicații server complete pentru a utiliza GraphQL pentru aplicațiile lor front-end, ci pot genera pur și simplu un API în cloud.

React se dovedește a fi un cadru excelent pentru a lucra, deoarece este atât specializat, cât și flexibil. Spre deosebire de Angular sau Ember, nu are decizii de proiectare gata făcute și nu oferă soluții complete care ar putea limita dezvoltatorii de la experimentare.

Samer recomandă ca, odată ce dezvoltatorii devin încrezători în dedesubturile lui React, următorii pași ar trebui să fie explorarea Node. El motivează că, deoarece ecosistemul React și multe dintre noile instrumente sunt bazate pe noduri, dezvoltatorii React pot câștiga multă putere în cunoștințe prin înțelegerea instrumentelor din cadrul comunității.

Centrul mobil, performanța browserului și instrumentele pentru React Fiber de la Microsoft

Parashuram N descrie lucrul la Centrul mobil, performanța browserului și instrumentele pentru React Fiber la Microsoft

La Microsoft, Parashuram N lucrează la o serie de proiecte ca manager de program. Un exemplu include extensia Visual Studio Code (VS Code) creată pentru React, care permite autorilor să depaneze aplicațiile direct din codul VS. Se fac experimente pentru a deschide posibilitatea de a testa aplicații reactive pe cloud.

Mobile Center este un alt proiect venit de la Microsoft. Este un sistem care rulează alături de VS Code, astfel încât persoanele să poată alege dacă doresc să folosească unul față de celălalt sau să le combine pe cele două. Mobile Center le permite dezvoltatorilor să aleagă depozitele Github cu care doresc să lucreze, acestea sunt apoi semnate, construite, testate pe cloud și distribuite utilizatorilor finali.

A fi dezvoltator web vine cu multe avantaje, dintre care unul este capacitatea de a aduce imediat schimbări utilizatorilor. Nu există nicio întârziere în procesul de a prezenta modificări sau funcții noi, iar oboseala JavaScript nu este de obicei o problemă. Persoanele care implementează cod sunt capabile să facă acest lucru continuu, fără eșecuri. Practicile și tehnologiile de dezvoltare, cum ar fi LiveReload, Hot Module Replacement și Browser Sync, fac, de asemenea, crearea web mai ușor de gestionat. Toate aceste beneficii sunt unice pentru lumea dezvoltării web și sunt motive pentru care React se potrivește atât de bine cu web-ul.

Deși aplicațiile sunt cu adevărat native și specifice web, trecerea la react native în spațiul de dezvoltare mobil este destul de ușor de făcut. Motivul pentru care ideile pot fi implementate instantaneu clienților folosind lucruri precum Code Push și o serie de instrumente, cum ar fi caracteristica de depanare a călătoriei în timp din ChakraCore, sunt disponibile pentru a ajuta procesul.

Au apărut și multe proiecte legate de performanță, cum ar fi browser-perf care permite automatizarea performanței web sau sistemele de monitorizare; și aplicație tv monster care urmărește performanța bibliotecii React.js. Aplicația colectează automat date de performanță pentru toate cadrele și toate versiunile de react. Funcționează pe Chrome și pe mai multe browsere mobile. Ceea ce face aceste teste diferite de testele de performanță existente ale React, este că sunt din perspectiva unui browser, spre deosebire de JavaScript specific.

Parashuram discută, de asemenea, filozofia Microsoft, RxJS și crearea de instrumente de dezvoltare pentru Redux Observable pe VS Code.

Propunerea de import TC39 și Webpack 2

Propunerea de import TC39, Webpack 2 și comunitatea React din Est cu Neehar Venugopal

În vremurile actuale, obiectivul principal al lui Neehar ca inginer software este de a oferi dezvoltatorilor o soluție care să contribuie la eficientizarea construcției de aplicații. El este unul dintre autorii din spatele propunerii de import, care îi ajută pe autori să trimită mai puțin cod și să le sublinieze pe cele importante pentru optimizarea performanței (mai ales pe mobil).

Propunerea de import este disponibilă în Webpack 2 și este în etapa 3 propunere a TC39, ceea ce înseamnă că nu a apărut în browsere. Cu toate acestea, oamenii sunt de acord că funcționează, așa că va fi implementat foarte curând.

Începutul propunerii de import a fost inspirat de discuțiile despre mobil pentru CSS și mobil pentru UI/UX. Având în vedere că mobilul pentru javascript nu a fost încă discutat, dar viteza și performanța aplicațiilor mobile trebuiau îmbunătățite, subiectul a început în sfârșit să iasă la suprafață. A apărut întrebarea „cum pot trimite doar cantitatea minimă de javascript necesară pentru a arăta utilizatorului ce este pe ecran”. A fost introdus și importul dinamic, astfel încât încărcarea leneșă și împărțirea codului să poată avea loc în webpack.

Neehar vorbește și despre comunitatea React din Est. Deși departe, dezvoltatorii din această zonă încă se simt foarte incluși în comunitate datorită implicării mari a tuturor dezvoltatorilor, diversității și comunicării dintre membrii echipei. Totuși, ceva care ar putea fi îmbunătățit în Occident este o concentrare mai mare pe performanță. Spre deosebire de VueJS, React nu este la fel de adoptat din cauza problemelor de performanță.

Extensible React

Cameron Westland prezintă „Extensible React”

Cameron Westland este un arhitect software la Autodesk, care lucrează în prezent la o nouă versiune web care rulează pe React. Termenul „Extensible React” este introdus și poate fi definit ca „o abordare declarativă a creării de aplicații web conectabile”.

Extensibilitatea este adesea folosită în aplicații. Cu toate acestea, când vine vorba de crearea de aplicații care sunt extensibile, nu există prea multă conversație. Cameron și echipa sa de la Autodesk se străduiesc să declanșeze discuții mai ample pe acest subiect, oferind răspunsuri la întrebări precum „Dacă o persoană are o bară de instrumente și dorește să adauge o pictogramă la bara de instrumente folosind o extensie, cum ar proceda el/ea să facă acest lucru dacă aplicația este construită în React?”. Un exemplu de soluție include clientul de e-mail cunoscut sub numele de Annihilus. Este construit în React, oferă extensii și permite persoanelor să adauge părți personalizate la clientul lor de e-mail fără noapte.

Unul dintre cele mai mari lucruri despre React este efectul pe care îl are asupra ecosistemului dincolo de propria comunitate. De exemplu, înainte de React, o mulțime de cadre UI erau holistice. Ei au respectat convențiile și nu erau orientați pe componente. După React, o serie de cadre au început să se adapteze și să-și rescrie aplicațiile pentru a fi mai asemănătoare cu React. Acest efect de ondulare va fi observat cu siguranță odată cu noile modificări în React Fiber. În plus, comunitatea React este, de asemenea, una deschisă și încurajatoare. Nu există o singură persoană care decide ce va fi sau ar trebui să fie React. Are o dinamică de echipă puternică, iar multe dintre ideile dezvoltate de autorii cadrului sunt conduse de comunitate.

Fibră Redux-Observable și React

Jay Phelps despre Redux-Observable, React Fiber și ReactJS

Comunitatea React este descrisă ca fiind una dintre cele mai deschise comunități de acolo când vine vorba de acceptarea de idei noi. A dus la o regândire radicală și chiar a fost presupusă a fi un antimodel la acea vreme. React a reușit să regândească modul în care s-au făcut lucrurile și să creeze noi bune practici. Aceste noi norme au fost împărtășite și adoptate de alte cadre precum Angular și Ember.

Jay discută câteva proiecte open source care preiau conducerea în ecosistemul React. Acestea includ redux-observable, React Fiber și Jest.

Jay împărtășește viziunea redux-observable, sau RxJs, este un middleware pentru compunerea sau anularea efectelor secundare asincrone folosind Epic ca co-autor al acestei biblioteci. Jay și Ben Lesh au fost inspirați de alte idei din comunitate, cum ar fi redux-thunk și redux-saga.

Jay își împărtășește perspectiva asupra React Fiber și despre modul în care dezvoltatorii pot aștepta cu nerăbdare capacitatea de a prioritiza anumite elemente, cum ar fi intrările sau animațiile, în randarea lor.

Jest este un cadru de testare unitară care creează instantanee sau cod pentru un sistem simplu de testare. Acesta este un exemplu de proiect, precum React, care inițial nu a fost acceptat, dar a fost reinventat și acum are succes. Astăzi, Jest este emulat în alte cadre de testare pentru că a fost atât de util.

Nu ratați șansa de a vă implica mai mult în comunitate contribuind! Biblioteca React o găsiți „aici”.

Acest articol a fost co-scris de Trinh Kien și Tracy Lee