Circa un anno fa, si è svolto un acceso dibattito nella comunità dei programmatori sulla scelta tra Angular e React nei progetti. Naturalmente, ognuno aveva le proprie argomentazioni e la disputa si è protratta fino a quando, improvvisamente, nel 2018, un terzo concorrente, Vue.js, è entrato in gioco, guadagnando terreno. Siamo nel 2019 e, se vi state chiedendo quale framework JavaScript utilizzare nel vostro progetto, cercheremo di aiutarvi a prendere questa decisione presentando i pro e i contro di ciascuna tecnologia. Ma iniziamo con un po’ di storia.
Storia
Angular – sviluppato e rilasciato per la prima volta da Google nel 2010, è il più datato dei tre framework di cui parleremo oggi. Come probabilmente saprete, ha subito modifiche significative nel 2016, quando è stata rilasciata la sua seconda versione, eliminando le ultime due lettere del nome originale (AngularJS). Naturalmente, la versione originale continua a ricevere aggiornamenti, ma oggi ci concentreremo su Angular: l’ultima versione, Angular 7, è stata rilasciata nell’ottobre 2018.
React – Sviluppato da Facebook, rilasciato nel 2013. Facebook utilizza React in tutti i suoi prodotti (Facebook, Instagram e WhatsApp). L’attuale versione stabile è stata rilasciata a novembre 2018.
Vue è molto più giovane di Angular e React, essendo stato sviluppato solo nel 2014. Negli ultimi due anni, Vue ha visto un notevole aumento di popolarità, nonostante non sia supportato dalle principali aziende. La versione attuale, la 2.17, è stata rilasciata nell’agosto 2018. Attualmente sono in corso i lavori su Vue 3, con l’intenzione di passare a TypeScript.
Popolarità attuale
Poiché Angular e React sono parole piuttosto diffuse in inglese, è difficile misurarne la popolarità in Google Trends. Per determinarne la popolarità, abbiamo utilizzato GitHub, un servizio online per progetti di programmazione.

Un buon modo per valutare la popolarità di entrambi i framework è analizzare la domanda del mercato del lavoro. Il grafico sottostante mostra che Angular e React sono molto richiesti, mentre Vue rappresenta solo una frazione di questa percentuale (circa il 20%). Dal punto di vista di un dipendente, è meglio imparare i primi due framework, ma data la futura popolarità di Vue, potrebbe diventare il leader.

Prima di utilizzare un framework open source, assicuratevi di utilizzarne la licenza. È interessante notare che tutti e tre i framework utilizzano la licenza MIT, che prevede restrizioni limitate sul riutilizzo, anche nel software proprietario. Assicuratevi di comprendere le implicazioni della licenza prima di utilizzare qualsiasi framework o software.
Aggiornamenti
Quando si lavora su un framework scelto, di solito non bisogna preoccuparsi degli aggiornamenti, ma vale la pena tenerli d’occhio perché alcuni aggiornamenti potrebbero richiedere alcune modifiche per mantenere la compatibilità.
Angular – Gli aggiornamenti principali avvengono in genere ogni sei mesi

React – Facebook ha ritenuto che la stabilità fosse fondamentale, poiché le sue soluzioni sono utilizzate da grandi aziende come Facebook, Twitter e Airbnb. Gli aggiornamenti sono più facili da implementare qui, con l’aiuto di script come react-codemod.
Vue – FAQ Vue sostiene che il 90% delle API sono le stesse se si migra dalla versione 1.x alla 2. Esiste anche uno strumento di supporto che viene eseguito nella console per aiutare a valutare lo stato dell’applicazione.
Lavoro
Ci sono diverse caratteristiche importanti a cui prestare attenzione durante il lavoro, ma le più importanti sono sicuramente le dimensioni complessive, il tempo di ricarica e i componenti disponibili.
Dimensioni e tempi di caricamento:
Angular: 500+ KB
React: 100 KB
Vue: 80 KB
La differenza di dimensioni è significativa, anche se minima se confrontata con le dimensioni dei siti web moderni, che solitamente superano i 2 MB.
Quale è più facile da padroneggiare?
Angular è piuttosto difficile da imparare e la curva di apprendimento è ripida. Non sorprende che padroneggiare Angular richieda la conoscenza di TypeScript e MVC.
React – Offre una guida introduttiva. È importante notare che alcune funzionalità richiedono l’utilizzo di librerie di terze parti. La curva di apprendimento non è ripida, ma dipende dalle funzionalità che si utilizzeranno..
Vue è più facile da imparare rispetto ad Angular o React, ma questa flessibilità ha i suoi svantaggi, che si manifestano in un debug e in test scadenti.
RiepilogoScegliere il framework giusto non è facile; ognuno ha i suoi vantaggi e svantaggi. Angular è il più maturo dei tre e offre un supporto esteso. Tuttavia, la curva di apprendimento è ripida, il che può essere scoraggiante. Angular è una buona scelta per le aziende con team di sviluppo di grandi dimensioni. React, d’altra parte, è un’ottima scelta per chi inizia con JavaScript, principalmente grazie alla sua perfetta integrazione con altri framework. Sebbene Vue sia il più recente sul mercato, sta guadagnando popolarità molto rapidamente. È un’ottima scelta per chi apprezza semplicità e flessibilità. Rispondere alla domanda su quale framework sia il migliore è quasi impossibile. Ognuno ha i suoi vantaggi e svantaggi. Tutto dipende dal progetto e dalle esigenze individuali.