Node.js e JavaScript oggi

Short link

Per anni abbiamo usato JavaScript solo lato client e lo abbiamo odiato a causa delle incompatibilità tra browser. Poi sono nati framework e librerie come jQuery, AngularJS, React e abbiamo cominciato ad amarlo.

Intanto alcuni browser-dinosauri erano spariti e le nuove leve come Chrome ed Edge prendevano sul serio gli standard e ci siamo accorti che potevamo usare JavaScript direttamente senza intermediari. ECMAScript nel frattempo è arrivato alla versione 6 e ora abbiamo class che per noi amanti dell'OOP in PHP ci ripaga degli anni passati a cercare di capire come mai un analogo del nostro __construct() in JavaScript sembrasse blasfemo.

Cominciamo a ragionare.

node -v

Node.js non è l'alternativa, ma una tra le molte alternative possibili. Ogni progetto ha le sue esigenze e non si possono dare diktat autoritari senza tenere conto del fatto che anche ciascun sviluppatore ha le sue esigenze e le sue preferenze nonchè le sue skill.

Se conoscete bene JavaScript, Node.js è la vostra alternativa. Se invece usate JavaScript senza una buona padronanza del linguaggio in sè, allora è come voler creare un CMS con Zend o Symphony dopo un corso di PHP di 24 ore.

Node.js è veloce, performante, event-driven, basato sul non-blocking I/O e sull'engine V8 ecc. ecc. Questo è il mantra che ripetono tutti, ed è tutto vero. Ma è JavaScript al 100%.

Il rischio è quello di commettere errori nel design del codice, ad esempio creando routine ignorando che esiste già un metodo JavaScript che la implementa già o producendo un codice da far venire la labirinte perché non si sa come evitare il callback hell.

Quindi JavaScript first, poi Node.