Angular vs React vs Vue

04 Nov 2019 | M.A.D.R.

Quale framework di Front End scegliere per le Web Application

Angular, React e Vue sono framework per il Front End che sono sempre più popolari grazie alle possibilità avanzate che offrono. Possiamo affermare che qualsiasi Web Application moderna fa uso di uno di questi tre framework.

Cosa ricercare nei framework
Per la scelta del framework dobbiamo cercare una risposta a queste domande:

  • Qual’è la maturità del framework?
  • Quanto sono estese ed utili le relative community?
  • Quanto è semplice trovare uno sviluppatore per ogni framework?
  • Quali sono i concetti di base di come sono programmati?
  • Quant’è è semplice l’utilizzo per applicazioni piccole o complesse?
  • Quali sono le perfomance?
  • Qual’è la curva di apprendimento?

Storia

Angular è un framework Javascript basato su TypeScript, sviluppato e supportato da Google. Nasce nel 2010 ed è utilizzato da moltissime aziende.

React è stato rilasciato nel 2013 ed è sviluppato e supportato da Facebook, anche questo framework è molto popolare.

Vue è un framework che sta crescendo in maniera sorprendente, nato nel 2014, a partire dal 2016 il suo utilizzo è aumentato quasi in maniera esponenziale. Sviluppato e supportato da ex dipendenti di Google, vanta anch’esso un’importante diffusione.

L’aspetto più importante e comune a tutti i framework è che sono distribuiti in maniera gratuita e con licenza MIT.

I framework in questione sono tutti component based, con Vue e React che eccellono nell’uso di funzioni “semplici” per es. stateless.

React e Vue fanno uso di ES6, mentre Angular di Typescript. Inoltre dal punto di vista del templating React fa uso di JSX, un preprocessore di codice HTML like che compila Javascript, in pratica in React si ottiene solo codice Javascript. Angular, invece, fa uso di una speciale sintassi (Es. ngFor, ngIf, ecc…) e Vue di “single-file component” dove script, template e stile sono in unico file ma in tre sezioni separate con la possibilità di usare preprocessori come Jade e SCSS.

Dove usare Angular, React e Vue

Angular è un framework completo mentre React e Vue sono essenzialmente una collezione di librerie e permettono un enorme flessibilità in cosa utilizzare e per cosa, con Vue che è certamente più pulito e semplice.

Grazie a differenti caratteristiche tecniche (Redux, one-way o two-way data binding, dependency injection) che aumentano o diminuiscono le complessità dei framework possiamo indicare che React e Vue si sposano bene con la realizzazione di microservizi mentre Angular per Single Page App.

Inoltre Angular e React implementano il “native development” per la costruzione di Cross Platform App, per es. in Angular troviamo Ionic ed in React, React native.

Performance

Da alcuni benchmark possiamo affermare che Vue ha eccellenti performance ma, di fatto, le prestazioni di tutti i framework si avvicinano molto pertanto, a nostro avviso, non può essere considerato come elemento di valutazione per la scelta del framework.

Soluzioni complete per ogni esigenza