Applicazioni Node JS

Conosciamo molto bene Node JS ed il suo ecosistema.

Molto versatile per la scrittura di servizi di API Rest o GraphQl: https://feathersjs.com/ / http://restify.com/

Ottimo per realizzare app web: https://expressjs.com/it/ / https://nestjs.com/

Ed ultimamente utilizzato anche per eseguire server side rendering (SSR): https://angular.io/guide/universal / https://nextjs.org / https://nuxtjs.org/

Cosa è NodeJS?

Node.js è un runtime di JavaScript, asincrono ed orientato agli eventi. Permette quindi di eseguire il codice JavaScript al di fuori di un browser.

La sua natura asincrona ed orientata agli eventi, lo rende particolarmente performante nel gestire in parallelo tante richieste computazionalmente non onerose. Questa caratteristica lo rende una ottima scelta per API RESTful.

Inoltre molti framework, come React, Angular e Vue, sono pensati per essere eseguiti sia lato server che lato client (nel browser). In questo caso Node diventa uno dei componenti chiave che permettono il cosiddetto Server Side Rendering.

Infine, Node.js è pensato per interagire in modo semplice con librerie C++, permettendo di ottenere il massimo delle performance laddove sia necessario.