Experienta tranzitiei de la Angular la React

Am lucrat vreo 6 ani cu Angular, iar recent am trecut la React.

Primele impresii:

Se spune despre React că are mai multe componente, pluginuri, etc.
Încă nu mă pot pronunța, însă pot spune că învățatul fiecărui component solicită timp.

Prima concluzie pe care o am e că este mai eficient să stăpânești tehnologia (fie React, fie Angular) și să stăpânești o librarie UI, precum Angular Material sau Material UI.
Știind cele 2 e mai ușor să construiești o aplicație si poti ignora teme sau 3rd party componente.

O a doua concluzie e că React solicită mai multă putere de la computer - memorie, CPU.
Cu Angular era walk in the park. Cu React tot primesc atenționări diverse.
Dacă vrei să lucrezi pe laptop vreo oră fără cablu, React s-ar putea să-ți descarce bateria mai devreme.

La partea de compilare, probabil din cauza resurselor hardware, React merge un pic mai lent.

La structura proiectului si a fișierelor, Angular este mai simplu. Din start ai o structură bine definită și nu mai umbli la ea.
React oferă libertatea de a-ți face singur structura, ceea ce nu e întotdeauna okay. De exemplu dacă iei o temă UI sau intri într-un proiect început de altcineva, trebuie să te adaptezi la ce există, ceea ce complică lucrurile.

Desigur, sunt si frameworkuri care fac pentru React ceea ce are Angular implicit, dar la ce bun dacă adaugă complexitate.

Ca să ma pronunț, nu văd vreun beneficiu in favoarea Angular sau React, dar există impresia falsă că React e mai ușor, mai rapid de învățat, că are mai multe componente.

La performanță pentru utilizatori e altă poveste.
Acolo depinde mult si pentru ce este aplicația.

3 Likes

nu este impresia falsa, chiar e mai usor de invatat.
Ca fost dev de Angular cu trecere catre React am impresia ca si tu ca si mine de altfel, ai venit cu gandirea de Angular incercand sa intelegi React-ul si astfel ti se pare greoi.
React-ul e doar o librarie si ai nevoie si de alte librarii ca sa poti construi un app usor. Stackul de librarii e destul de standard si nu necesita efort prea mare sa il intelegi.
Ambele, atat Angular cat si React au plusuri si minusuri si nu am inteles de ce mereu a existat acest ‘battle’ intre cele 2 tooluri(aici nu ma refer la tine, ci in general) pe care le alegem in functie de anumite nevoi ce tin de proiect.

Cam știam la ce să mă aștept.
Când am învățat Angular am studiat piața si am ales între el si React.
Și tot am mai citit despre React, că se tot discută despre competiția asta.

Competiția nu e între cele două tehnologii, ci între cele două soluții.

Chiar dacă (poate) React e mai ușor de învățat, totuși ai mai multe componente de învățat.
Si cum spuneam, dacă intri într-un proiect început de altcineva ai de învățat și ce au făcut alții acolo.

Cred că “bătălia” a fost mai degrabă ceva personal, de ce știe fiecare mai bine si ii place.

1 Like

la ce te referi cand zici “ai mai multe componente de invatat” ?

Ultima data camd am lucrat pe Angular[1], am ovservat ca este asemanator ca si structura cu aplicatiile java enterprise.
Servicii, DI, framework de testate si altele pe care nu le-am observat.


  1. a se citii toy project la munca :smiley: ↩︎

Unele funcții care există in Angular built-in, dar in React trebuie să le alegi.
Ex: validarea formularelor, routing.

La prima vedere nu e ceva important, dar sunt dependințe externe…
Vine o zi când vrei să faci update la React si te lovești de asta.

Nu că la Angular însuși nu e durere de cap la update.

React e mult mai ușor de testat și ai într-adevăr multe librării pe lângă. Vezi doar React Query cu axios vs Http.

Poți folosi solutii de framework precum next, redwood…

Dar, nu e chiar așa simplu dacă cauti mereu cea mai bună solutie și best practice-uri. Toate proiectele au structura diferită. La un monorepo am văzut și mai multe versiuni de react cu clase, cu hooks… era enervant de trecut de la un subproiect in altul. Dar nu cred că mai e cazul.

asta pentru ca angular e framework. Fie ca citesti documentatia la routingul sau forms in angular fie ca citesti la ce librarie de routing sau cu ce faci formulare in react, tot trebuie sa citesti.
Gandeste-te pe partea ailalta, apare o librarie noua si mai buna decat ceva existent si e mai usor de adoptat in react - (de ex formik vs react hook forms)

1 Like

Ai uitat sa mentionezi SvelteKit si mithril.js :smiley: