Dev

Vue.js è il framework front-end più hot del momento

In questo post vorrei parlare delle caratteristiche che mi hanno fatto innamorare di Vue.js e che a mio avviso sono alla base dell’incredibile tasso di crescita di questo framework su GitHub e non solo.

Questo non significa che strumenti come React ed Angular (2+) non siano a mio avviso validi, ma semplicemente che trovo che Vue.js sia la soluzione più bilanciata per iniziare un nuovo progetto.

La scelta di un framework o di una libreria per lo sviluppo di un nuovo progetto (ad esempio una web app) non è solo una scelta personale.

L’adozione di una libreria piuttosto che di un’altra potrebbe avvantaggiare o svantaggiare nel prosieguo dello sviluppo ed incidere nei tempi, costi di manutenzione così come le performances dell’applicazione stessa nel tempo man mano che il progetto cresce.

Da professionista del settore ho lavorato con tutti i maggiori framework frontend in circolazione (Angularjs, Angular, React, Vue.js, Ember), eppure sono finito per prediligere Vue su tutti.

Per non ridurre l’argomento del post ad una narrazione da fanboy, vorrei affrontare qui punto per punto le caratteristiche che ho trovato più interessanti e che motivano questa mia predilezione.

Popolarità 🌶️

Osservando i trend di crescita in termini di star su GitHub notiamo una ascesa vertiginosa del gradimento verso “il nuovo arrivato” rispetto ai più longevi Angular e React.

Vue ha addirittura superato React alla fine del 2018.

Trend di crescita di Vue.js su GitHub

Caratteristiche

Flessibilità

Forse la cosa che apprezzo di più: Vue è pensato per essere adottabile progressivamente. Questo significa che posso decidere di volta in volta se utilizzarlo come una semplice libreria per arricchire una sola porzione di una pagina web, con un footprint bassissimo (= peso aggiuntivo dovuto all’introduzione della libreria) oppure come un framework completo e dotato di strumenti robusti.

Vue infatti è suddiviso in moduli perfettamente progettati ed oliati per lavorare fra loro, ma completamente opzionali. Questo mo consente di selezionare solo ciò di cui ho realmente bisogno e non appesantire la struttura dell’applicazione con moduli inutilizzati.

Stabilità

Vue.js è un framework stabile. Con questo non intendo dire che non crasha, ma che la sua sintassi è fatta per rimanere stabile nel tempo.

Se hai sviluppato software che abbia una certa importanza business (o se hai intenzione di farlo) converrai con me che è fondamentale poter contare su uno strumento che, se aggiornato nel tempo, non richiede la riscrittura delle funzionalità sviluppate ad ogni aggiornamento delle dipendenze (chi ha detto Angular?).

Ti basti pensare che al rilascio della versione 2 del framework il 90% delle api sono rimaste invariate, garantendo un processo di migrazione quasi totalmente indolore.

In contesti business questo significa meno costi e tempi più brevi nella manutenzione dell’applicazione.

Developer Experience

Si parla sempre di User Experience, ma chi pensa a noi sviluppatori? Ecco, Vue.js lo fa.

Gli sviluppatori come me amano Vue.js non solo per la sua tecnologia, ma anche perché è disegnato per rendere la nostra vita più semplice possibile.

Oltre a strumenti comodi come la CLI o l’estensione DevTools di una efficacia e semplicità d’uso disarmanti, possiamo contare su una documentazione ufficiale completa e veramente ben fatta.

La struttura stessa del framework consente una curva di apprendimento davvero molto bassa e perfetta anche per i newbie che si approcciano per la prima volta allo sviluppo di una applicazione.

Curioso di iniziare ad utilizzare Vue.js? 🚀

Il web è pieno di tutorial e documentazione in merito (specialmente in inglese e cinese). Nonostante questo ho voluto creare un piccolo testo interamente in italiano che possa aiutare a muovere i primi passi.

Il testo illustra i principi del framework da un punto di vista operativo, accompagnando ogni elemento con esempi pratici e mini-progetti.

Il libro è disponibile su Amazon in versione Kindle oppure in versione cartacea.

Dubbi/Opinioni?

Parliamone nei commenti o contattami sulla mia pagina Facebook.

Commenti