4. Pourquoi utiliser Node.js ?

Node.js a connu un succès fulgurant ces dernières années, et on est en droit de se demander pourquoi. Qu’est ce qui le rend si différents des autres environnements serveurs, comme PHP ou Java par exemple ?

Et bien, comme nous allons le voir, Node.js apporte plusieurs innovations importantes qui le rendent unique, et de plus en plus irremplaçable.

Node.js utilise le langage JavaScript

L’un des atouts majeurs de NodeJS, c’est l’utilisation du langage JavaScript, et c’est d’ailleurs un des éléments qui le caractérise le plus.

Et oui, JavaScript est le langage le plus répandu parmi les développeurs web, et il peut être interprété par tous les navigateurs existants. De plus, c’est un langage qui est utilisé sur plus de 1 milliards de sites internet existants actuellement dans le monde. Bref, les développeurs connaissant le JavaScript sont déjà nombreux.

Et c’est plutôt intéressant, car utiliser plusieurs langages dans un projet pose rapidement des problèmes. D’abord, cela peut poser un problème de ressources : Est-ce que tout le monde dans l’équipe connait les langages utilisés dans le projet ? Ce n’est pas garantie, et cela nous amène au deuxième problème, la communication. Comment les développeurs qui codent pour le navigateur peuvent comprendre ce que font les développeurs côté serveur, comment peuvent-ils échanger entre eux ? C’est loin d’être évident.

En utilisant Node.js, cela permet de résoudre ses problèmes, et tout le monde peut parler le même langage dans l’équipe, sans mauvais jeu de mots. On peut donc simplifier nos projets, et surtout accélérer leur développement. De plus, cela vous évite de devoir apprendre un nouveau langage, il ne vous reste « plus qu’à » découvrir les spécificités du développement côté serveur.

Et même au niveau organisation du code, l’utilisation de Node.js est beaucoup plus pratique, car vous pouvez avoir les mêmes conventions de noms et les mêmes bonnes pratiques dans tout le code du projet, que ce soit côté client ou côté navigateur.

Aussi, comme Node.js utilise le langage JavaScript, on dispose du même gestionnaire de paquet NPM (Node Package Manager). On va donc gérer les dépendances de notre futur projet Node.js comme on a déjà l’habitude de faire avec nos applications Web. Que demandait de plus ?

Node.js est très rapide

Node.js est extrêmement rapide pour exécuter le code d’une application.

Et cette rapidité tient principalement à deux facteurs : l’utilisation du moteur JavaScript V8 de Chrome, et son utilisation d’une architecture dite « non bloquante ». Mais nous reviendrons prochainement sur ces facteurs, car cela est dû à la structure interne de Node.js, qui mérite bien une autre section dédiée.

Retenez pour le moment que Node.js est une des solutions les plus rapides qui existe, et que cela en fait une solution de premier plan pour développer des applications en temps réel, comme une messagerie instantanée par exemple, car vos utilisateurs pourront échanger leurs messages avec beaucoup plus de fluidité.

Node.js est flexible

Node.js est un environnement d’exécution très léger, car par défaut il n’a pas beaucoup de fonctionnalités intégrées. C’est à nous d’ajouter les modules dont nous aurons besoin pour nos développements. On peut donc charger uniquement ce dont on a besoin.

Dans le même temps, Node.js bénéficie d’un écosystème très large de librairies open source que nous pourrons utiliser directement dans notre projet, grâce au gestionnaire de paquets NPM (encore lui !). C’est exactement le même fonctionnement que pour une application web, on peut aller chercher telle ou telle librairie dont on a besoin pour notre application.

Node.js est de plus en plus populaire

Node.js est déjà très populaire, que ce soit auprès des développeurs, ou auprès de grandes entreprises comme Microsoft, Paypal, ou encore LinkedIn.

Cela signifie que si vous êtes bloqués à un moment ou à un autre dans vos développements, vous pourrez trouver de l’aide facilement sur Internet. De plus, si vous cherchez à intégrer un module tier pour votre application Node.js, vous trouverez déjà de nombreux projets disponibles, réalisés par des développeurs Node.js confirmé. Le développement de votre application ne pourra qu’être plus rapide.

La popularité d’une technologie ne semble pas être forcément le critère le plus important, mais pourtant je vous recommande fortement de prendre en compte cet aspect lorsque vous choisissez de vous former sur une technologie. En effet, cela veut dire que la technologie est déjà utilisée par beaucoup de monde, qu’elle a fait ses preuves, et qu’elle est là pour durer longtemps. 🙂

Nous avons vu les principaux avantages à utiliser Node.js, et j’espère que cela vous a donné envie de l’utiliser. Nous allons maintenant voir les grands principes du fonctionnement interne de Node.js