Un percorso di studi per imparare a sviluppare in Node.js

Un percorso di studi per imparare a sviluppare in Node.js

In questo articolo illustreremo un possibile percorso di studi per imparare a sviluppare in Node.js.

JavaScript

JavaScript andrebbe studiato nelle sue funzionalità core omettendo tutte quelle caratteristiche che sono attinenti in modo specifico allo sviluppo lato client come l'implementazione DOM (Document Object Model) e BOM (Browser Object Model).

Quindi andrebbero studiati e praticati:

  1. Costrutti base del linguaggio.
  2. Metodi globali.
  3. Metodi specifici degli oggetti base (Number, String, Array ecc.).
  4. Programmazione OO e design pattern correlati.
  5. Programmazione funzionale e design pattern correlati.
  6. Programmazione asincrona (Promises, modello async/await ).
  7. Buone pratiche per evitare il callback hell.
  8. Modello generico degli eventi e programmazione correlata.

Si consulti JavaScript (Mozilla Developer Network).

HTTP

Occorrerebbe conoscere:

  1. Anatomia di una richiesta HTTP.
  2. Significato e applicazione dei verbi HTTP.
  3. Intestazioni (header) HTTP.
  4. Codici di stato (status) HTTP.
  5. La caratteristica stateless (cookie e sessioni).

Si consulti An overview of HTTP.

Server

Gli argomenti richiesti sono:

  1. Conoscenza della command line/shell del server.
  2. Installazione del software dalla shell.
  3. Installazione di Node.js da sorgente.
  4. Uso di NPM.
  5. Configurazione di un web server (es. nginx).
  6. Conoscenza del filesystem e argomenti correlati.
  7. Conoscenza di SSL/TLS.
  8. Conoscenza delle fondamentali caratteristiche del SO in uso.

Si consulti:

  1. Operating system (bibliografia).
  2. NPM Documentation.
  3. nginx documentation.
  4. SSL/TLS.

Database

Nel caso dei database, se si utilizza un database relazionale (es. MySQL) occorre conoscere i fondamenti dei database relazionali e nello specifico le caratteristiche del database in uso. Lo stesso principio si applica per i database non relazionali (es. MongoDB). Node.js è agnostico rispetto al tipo di database che si vuole utilizzare.

Si consulti:

  1. MySQL Documentation.
  2. MongoDB Manual.

Node.js

Si consulti la documentazione ufficiale relativa alla versione in uso.

Torna su