Sviluppo di Web App con Vue.js

Salvatore Sabbia

Sviluppo di Web App con Vue.js

Come direbbe qualcuno "il web è sbagliato". E come dargli torto.  

Oggi programmare per il web vuol dire districarsi tra centinaia di tecnologie, framework e librerie.  
Inoltre creare una web app fruibile da diversi dispositivi (computer, tablet, smartphone) con diversi browser e diverse dimensioni dello schermo (chi ci ha lavorato sa bene di cosa parlo) può risultare abbastanza tedioso, soprattutto per chi è alle prime armi.  

Loghi vari

Per semplificare lo sviluppo e l'approccio a queste diverse problematiche, oggi è quasi impensabile non utilizzare un framework/libreria di qualche tipo. Essi consentono una maggiore velocità di sviluppo e si appoggiano a delle community di sviluppatori che contribuiscono attivamente, testando e consigliando nuove funzionalità. 

A tal proposito, oggi vi parlo di un framework facile da utilizzare e veloce da imparare, che ha cambiato completamente il mio approccio allo sviluppo di web app: Vue.js.

logo vue.js
 

Vue.js è un framework javascript open source e progressivo per la realizzazione di interfacce web.
A differenza di altri framework monolitici come Angular o React che mettono a disposizione una soluzione completa per la realizzazione di web app, Vue.js si concentra esclusivamente sulla gestione e costruzione delle viste HTML, offrendo comunque un ecosistema capace di integrarsi facilmente con altre librerie, tool di sviluppo e progetti. 

Nonostante sia stato sviluppato da zero, appaiono evidenti alcune similitudini con Angular e React, dai quali gli sviluppatori hanno saputo prendere le caratteristiche migliori, tra cui: single file component, routing, virtual dom, server side rendering, CLI.


I punti di forza di Vue.js si possono riassumere in:

Semplicità 
Basta includere uno script nella head della pagina web senza configurare nulla per iniziare ad utilizzarlo.

Ottima documentazione
Dettagliata e ricca di esempi grazie alla quale la curva di apprendimento si abbassa di molto.

Flessibilità 
Si può utilizzare per aggiungere funzionalità ad applicazioni esistenti o utilizzarlo come full-scale framework; si integra facilmente con altri sistemi e lascia totale libertà sulla struttura dell'applicazione.

Ambiente di sviluppo modulare
Architettura component-based ideale per lo sviluppo di app scalabili, permettendo un maggior riutilizzo del codice e riducendo notevolmente i tempi di sviluppo.

Open Source Community 
Grazie alla sua rapida ascesa di popolarità, il supporto da parte della community open source è in continua crescita. Sono disponibili centinaia di componenti creati dalla community 
https://github.com/vuejs/awesome-vue

Inoltre mette a disposizione diversi tool che facilitano le fasi di sviluppo:

Vue.js Command Line Interface (CLI) 
Mette a disposizione un sistema completo da riga di comando per un rapido scaffolding dei progetti. Tramite un wizard interattivo è possibile effettuare il setup completo di un progetto, includendo dipendenze, features e configurazione.
Inoltre è disponibile un interfaccia grafica web-based che mette a disposizione una dashboard completa per la creazione e mantenimento di progetti.

Vue.js Command Line Interface (CLI)
Vue.js devtools
Si tratta di un'estensione per i browsers che semplifica il debug di codice Vue. Tramite un'interfaccia sarà possibile ispezionare i singoli componenti e i dati ad essi associati, monitorare lo stato e misurare le performance.

Grazie a queste caratteristiche, Vue.js si trova nella posizione giusta per competere con i due giganti Angular e React. 
Le statistiche mostrano una rapida ascesa di popolarità (a seguire un grafico che mostra la popolarità su github).
Vue.js devtools
In conclusione, Vue.js si dimostra essere un framework completo, offrendo tutto ciò che serve per lo sviluppo di qualsiasi tipo di applicazione (anche mobile).
Odoo • Immagine e testo

Salvatore Sabbia

- Developer -