Cos’è Express.js e come funziona
Guida al Web Framework per Node.js

Tempo di lettura: 3 minuti
Express.js il framework di Node.js, cos'è e come funziona

Cos’è il framework Express.js

Hai imparato a scrivere dei codici javascript con Node.js, per quanto divertente resta comunque una tecnologie di basso livello.

Scrivere codici in questo modo va bene per i miei 5 minuti d’apprendimento e può essere utile in certi scenari, ma la maggior parte delle volte è MOLTO più comodo avere strumenti a disposizione per velocizzare il lavoro.

Proprio questo è il motivo per cui sono state inventate le librerie e poi i framework, che sono una sorta di super-libreria!

In questo articolo approfondiremo uno dei più famosi web framework per Node.js ovvero Express.js.

Come installare Express

Se stai navigando sul sito dell’NPM, ti accorgerai subito che c’è un modulo molto apprezzato: Express.js.

Si tratta in realtà di un micro-framework per Node.js. Offre strumenti di base per creare più velocemente applicazioni in Node.

Ma attenzione: non confrontare Express.js con i dei “pesi massimi” come Django per Python o Symfony per PHP!

Questi offrono funzionalità complete e potenti come la generazione di interfacce di amministrazione, cosa che in realtà non avviene per Express (ricordati che è un micro-framework).

Perché non è così completo?

Beh, semplice! Perché Express parte dal basso livello di Node.js, mentre PHP o Python sono linguaggi di alto livello.

Express ci permette comunque di restare ad un livello abbastanza basso ma di avere dei vantaggi, ad esempio nel generare percorsi (URL) per la tua applicazione più facilmente, o di utilizzare i template.

Questo è un grande passo avanti!

Per continuare, posizionati nella cartella di un tuo progetto (se non ne hai uno creala e inizializzala con il comando dell’npm) e poi installa Express con il seguente comando::

npm install express

Ora sei pronto ad usare Express!

come-installare-express-cos-e-express-framework-nodejs
Installazione di Express avvenuta con successo

Installiamo Express-Generator: generatore automatico

Per adesso abbiamo solo installato il modulo express ma non lo stiamo usando nella nostra applicazione.

Dato che questo è il tuo primo tutorial consiglio di aggiungere un altro modulo che ti farà risparmiare un sacco di fatica, si chiama express-generator ed essenzialmente genera per noi la base di un progetto perfettamente funzionante.

Esegui questo comando ed effettua l’installazione globale del pacchetto:

npm install -g express-generator

Perfetto! Ora possiamo richiamarlo in qualsiasi cartella, posizionati in una cartella vuota ed esegui il comando:

express --view=ejs

Se ti appare qualche messaggio notificandoti che la cartella è vuota premi il tasto Y per yes.

generare-progetti-express-generator-imparare-node
Un fantastico strumento per generare le basi dei tuoi progetti Express

Nota bene: EJS è uno dei tanti template engine supportati, approfondiremo questo aspetto nel prossimi tutorial.

Se tutto è andato a buon fine il risultato sarà simile a questo:

esempio-applicazione-express-server-nodejs
Esempio del codice generato, un perfetto server express funzionante!

Come puoi vedere a creato tutto il codice per noi!

Dai pure un’occhiata al codice javascript e alla struttura delle cartelle.

Per rendere la nostra applicazione funzionante dobbiamo installare le dipendenze:

npm install

Ora non ci resta che provare la nostra applicazione, quindi esegui:

npm start

Apri il tuo browser e vai alla all’indirizzo http://localhost:3000

Quello che vedrai sarà simile a questo:

applicazione-express-esempio-web-framework-nodejs
Il nostro sito scritto in Express funziona perfettamente

Bene, hai fatto la conoscenza del framework Express, ti lascio un po’ di tempo per spulciarti le cartelle e i file generati automaticamente. Nel prossimo tutorial andremo ad approfondire il meccanismo di routing offerto dal framework!


L’articolo che hai appena letto fa parte di una lunga serie di guide e tutorial tradotte in italiano e distribuite gratuitamente. In particolare questo articolo si basa sui testi inglesi di Mathieu Nebra (Ultra fast applications using Node.js), con licenza CC BY-NC-SA. Questo articolo è sotto la stessa licenza.