Technology In Depth

Gli strumenti JavaScript per creare il front end

Un buffet di tutti i gusti di Java Script offerti dal mercato: il dietetico Plain Vanilla, il fusion Vercel, il gourmet React, il piccante Angular. Scopriamo come scegliere gli strumenti che fanno per noi

Pubblicato il 05 Gen 2024

Immagine di TippaPatt su Shutterstock

Che mondo sarebbe senza il web? E che web sarebbe senza JavaScript? Dai Primi anni di Netscape e Internet Explorer, quando ancora il browser chiedeva agli utilizzatori se desideravano abilitarne o meno il componente, JavaScript ha fatto passi da gigante, affermandosi come linguaggio scripting d’eccellenza per la gestione di eventi, metodi e proprietà del DOM (Document Object model), ossia la struttura di elementi grafici e testuali che compongono una pagina web.

L’evoluzione di Java Script

Mano a mano che la complessità dei siti web aumentava, soprattutto grazie al successo dei CMS e delle piattaforma di e-commerce, gli sviluppatori sentirono il bisogno di semplificare la gestione del codice, sia dal punto di vista dell’interfaccia grafica (le manipolazioni di CSS e gli elementi del DOM), sia dal punto dell’interazione con il back end (le chiamate AJAX per operazioni CRUD sulle basi dati).

Con JQuery videro la luce le prima proposte di librerie impiegabili tramite CDN (Content Delivery Network, reti di distribuzione contenuti): queste librerie potevano essere incluse in un sito web richiamandole nell’header, e offrivano oggetti e funzioni utilizzabili all’interno delle pagine. Questo permetteva agli sviluppatori di ottimizzare i tempi di rilascio di un progetto, ma non era ancora sufficiente a far fronte alle sfide lanciate dalla crescente fluidità delle pagine web.

Soprattutto grazie ai social network, ora JavaScript veniva impiegato su un’infinità di device mobili, a cui i flavour (“sapori”, come vengono chiamate le differenti declinazioni del linguaggio) esistenti non riuscivano a fare fronte in modo ottimale. Fu per le sfide imposte dall’interfaccia di una famosa “bacheca”, che JavaScript compì uno dei suoi salti più significativi, dando luce all’ambiente React.

React e Angular

React venne usato per la prima volta nel feed di news di Facebook nel 2011. La sua struttura innovativa rese l’interfaccia di Facebook capace di adattarsi dinamicamente a tutti i device mobili senza sacrificare le prestazioni. Il successo di React fu enorme, e la sua natura open source ne causò la diffusione anche su siti web al di fuori del social network da cui era nato. La sua crescente popolarità provocò l’immediata reazione dei competitors di Facebook, e fu Google a lanciare la prima alternativa di successo con il suo framework Angular, che puntava a conquistare il segmento delle Single Page Application e dei portali verticali b2b.

Tra i due litiganti, il terzo … Vercel

React e Angular avevano sfaccettature complesse che ne rendevano ostica la gestione a una fetta degli sviluppatori web, che erano alla ricerca di un framework il cui bootstrap fosse semplice senza dover essere però delegato a un provider di terze parti. Vercel fu la soluzione perfetta: il suo nuovo framework offriva un setup semplice da gestire, senza dover rinunciare a nessuna delle feature di scalabilità e performance offerte dalla concorrenza. Un fattore cruciale che determinò il successo di Vercel fu infatti la sua semplicità di gestione lato back end, che liberò lo sviluppatore web da una serie di incombenze legate alla configurazione degli applicativi server.

Il fascino dell’Old School

I framework JavaScript, però, a causa della loro architettura a blocchi, iniziavano a sembrare troppo costrittivi ad alcuni sviluppatori, che si scontravano con la rigidità dei pattern previsti. Inoltre, l’evoluzione continua del mondo web rendeva rischioso focalizzarsi su uno specifico framework, che poteva non essere sempre aggiornatissimo con le ultime novità in tema di protocolli e sicurezza.

Alcuni sviluppatori, perciò, sentirono la necessità di un ritorno alla libertà del Java Script originale, definito ora Vanilla per la sua assenza di sovrastrutture rispetto ai framework che lo avevano seguito. A fronte della perdita della comodità offerta da funzioni e oggetti già precostruiti, gli sviluppatori riguadagnavano la libertà di possedere interamente il controllo sull’applicazione sviluppata e di poter attingere liberamente a qualsiasi tecnologia disponibile.

A ognuno il suo

Valutare quale sia la versione di Java Script più adatta al proprio progetto spesso non è semplice: ci si può affidare ai numerosi CMS che semplificano la vita allo sviluppatore, ma che possono rivelarsi un incubo in caso di personalizzazioni impreviste; si può optare per un framework a oggetti per avere a disposizione una serie di facilitazioni nella gestione dell’interfaccia al prezzo di una maggiore complessità di manutenzione; oppure si può optare per la libertà assoluta del Java Script Vanilla.

La scelta della tecnologia da impiegare per sviluppare il front end della propria applicazione ha un impatto decisivo sul futuro della stessa, e fare la scelta sbagliata può anche causare il fallimento del progetto. Un importante peso su questa valutazione è l’esistenza o meno di plugin adatti a eseguire certe funzionalità critiche della nostra applicazione.

Immaginiamo, ad esempio, che ci venga chiesto di sviluppare un sito e-commerce con il supporto a un wallet di cripto valute. In questo caso, dovremmo valutare se vogliamo sobbarcarci l’impegno di sviluppare l’interfaccia RPC per gestire le chiamate al wallet, oppure utilizzare un framework in cui esista già un plugin che si occupi degli aspetti più tecnici permettendo di concentrarci sulla logica generale dell’applicazione.

Occorre poi valutare se la nostra web app debba essere pubblicata stand alone, su un proprio dominio, oppure integrata in un ecosistema più strutturato, come SharePoint o Teams. In questo caso potrebbe essere una buona idea cercare di sviluppare con un framework predisposto per un’integrazione con quell’ambiente, controllando prima che il flusso logico su cui vogliamo strutturare la nostra APP sia compatibile con i criteri di sicurezza dell’ecosistema desiderato.

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati

Articolo 1 di 4