NODE JS – Serveur JavaScript

I► NODE.JS ?

NODE.JS est le côté serveur de JavaScript. NODE.JS permet de développer une application complète en utilisant un seul langage le JAVASCRIPT. Alors qu’il fallait auparavant utiliser un langage côté serveur tel que PHP NODE.JS simplifie et améliore le développément.

Mais tout d’abord voyons comment à évoluer JavaScript au cours de ces dernières années !

JavaScript a considérablement évolué..

historique JavaScript

  • De 1990 à 2000, JavaScript est principalement utilisé pour vérifier les saisies dans un formulaire, pour créer des effets au clic ou au survol d’éléments HTML. D’ailleurs Microsoft renomme le HTML en Dynamic-HTML.
  • Dans les années 2000, les bibliothèques (frameworks) JavaScript font leur apparition. Une des plus connues est jQuery (Write Less Do More) dont le but est de simplifier la programmation JavaScript, de faciliter le parcours du DOm (Document Object Model) et de simplifier les requêtes AJAX ( Asynchronous JavaScript And XML). On continue à utiliser ces bibliothèques.
  • Depuis 2010, Google a créé le navigateur Chrome qui utilise le moteur V8 (projet open source) et qui rend l’éxécution du code JavaScript beaucoup plus rapide. Contrairement aux autres navigateurs qui lisent et interprétent le code de manière séquentielle, le moteur V8 de chrome fait de la compilation JIT(Just In Time). Le code est très rapidement transformé en langage machine.


NODE.JS utilise bien évidemment le moteur d’exécution V8 ! NODE.JS utilise un modèle non bloquant basé sur la notion d’événements. Explications :

  1. Une tâche doit être lancée par le programme …
  2. Le programme lance cette tâche …
  3. Dans un modèle bloquant le programme attendrait la fin d’éxécution de la tâche …
  4. Au contraire le programme non bloquant peut lancer d’autres tâches …
  5. Lorsque la 1èr tâche est téerminée, l’événement est remonté au programme grâce au fonction de CallBacks.

Exemple :

modèle-non-bloquant

Dans les applications Web , il ya beaucoup de processus longs et bloquants comme les appels aux bases de données, les appels aux services Web , NODE.JS va accélérer tous ces processus !

► Que peut faire NODE.JS avec ses modules ?

Capture

► Gestion des Modules

NODE.JS utilise un système de modules que l’on peut installer grâce au gestionnaire de paquets NPM. NPM gère les dépendances entre modules (paquets).

SYNTAXE :

  • npm search mot-clé
  • npm install -g nomDuPaquet -g = installation globale (tous les projets développés sous NODE pourront l’utiliser). Le module est enregistré dans le profil user et non dans le répertoire node_modules du projet lui-même.
  • npm -g update nomDuPaquet
  • npm view nomDuPaquet : liste les caractéristiques du module au format JSON
  • npm uninstall (-g) nomDuPaquet  : déinstalle le paquet

Une autre manière d’installer un module est de créer un fichier package.json avec toutes les recommendations, le placer dans le projet (répertoire) et ensuite lancer la commande npm install.

Pour créer le fichier package.json , on peut utiliser la commande  npm init –yes

► Un exmple de fichier package.json :

package

  • ~version “Approximately equivalent to version”
  • ^version “Compatible with version”
  • version Must match version exactly
  • >version Must be greater than version
  • >=version etc
  • <version
  • <=version
  • 1.2.x  : 1.2.0, 1.2.1, 1.2.6 mais pas 1.3.0
  • * toutes versions

 

► 1ers ESSAIS

Capture