Front-end application: Vue.JS, perché

2019-05-04

Vue.JS, un “progressive JavaScript framework”, sorprendentemente facile da avviare, offre molte funzionalità essenziali e offre ottime prestazioni.
Confrontandolo con i suoi concorrenti, inclusi Angular, React, Ember, Aurelia, ecc., Vue si vanta di battere alcuni di loro in alcuni aspetti. Questi aspetti includono semplici API, dimensioni, prestazioni, curve di apprendimento, ecc.

Con oltre 120k apprezzamenti su GitHub, Vue.js è attualmente il framework front-end JavaScript più alla moda, superando Angular e React negli apprezzamenti espressi su GitHub.

Semplicità
Aggiungere Vue a un progetto web esistente è relativamente semplice. È possibile avviare la codifica molto rapidamente e questo comporta un grande vantaggio in un team di sviluppo dal ritmo serrato in cui è richiesto di ottenere risultati velocemente.

Flessibilità
Con Vue, si può scrivere un’app molto rapidamente ed eseguirla direttamente dal browser, come pure è possibile costruire un’applicazione complessa usando ES6, JSX, componenti, routing, bundling ecc.
Questo approccio permette quindi diversi tipi di utilizzo in funzione dell’esigenza specifica che si ha per scrivere il codice; è infatti ad esempio possibile scrivere un modello in HTML o in Javascript od utilizzare JSX trovando il miglior modo di strutturare l’applicazione.

DOM virtuale!
Ispirandosi a ReactJS, dalla versione 2.0, Vue.JS implementa i Virtual DOM. Così facendo è possibile generare una versione del DOM in memoria ogni volta che si modifica uno stato e lo si confronta con il DOM effettivo, quindi è possibile aggiornare solo la parte che deve essere aggiornata invece di effetture il rendering completo di tutto, ottenendo forti benefici nella velocità di esecuzione.

Documentazione completa
La documentazione di Vue è molto dettagliata, facile da capire e include vari esempi di codice. La comunità di sviluppo è ampia. Può quindi essere utilizzato sia per applicazioni semplici che complesse.
Per applicazioni più grandi e complesse, è possibile utilizzare Vuex per la gestione e il routing dello stato. Una differenza chiave tra l’uso di Vuex e l’uso di Redux / Flux con React, ad esempio, è che le librerie companion di Vue sono ufficialmente supportate e mantenute aggiornate con la libreria principale. Redux and Flux provengono dalla comunità di React e non sono legati a React.
Rendering veloce garantito da DOM virtuale e tempo di caricamento minimo sono quindi in sostanza i suoi punti di forza.

Benchmark
Di seguito sono elencati alcuni benchmark che misurano le performance a confronto delle più diffuse tecnologie frontend:

(Durata in millisecondi ± deviazione standard)

GO Top
Top