Vous êtes sur la page 1sur 15

Mr.

JADLI AISSAM 27/11/2020

Environnement de Développement
NodeJS

Présenté par : JADLI AISSAM

/ in / ja d li- a is s a m - 8 6 a 6 9 8 4 3 SÉANCE 1 ja d lia is s a m @ g m a il.c o m

SOMMAIRE

Philosophie de Environnement
Introduction
NodeJS de Travail

Mr. JADLI AISSAM 2

ESTEM 2020 1
Mr. JADLI AISSAM 27/11/2020

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

INTRODUCTION
NodeJS est un Environnement de développement en JavaScript. Il est événementiel
et totalement asynchrone, ce qui permet une réactivité beaucoup plus grande pour
des applications web nécessitant du temps réel (messagerie, jeu, événement live…)
par rapport à des serveurs classiques comme Apache.

Mr. JADLI AISSAM 3

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

JavaScript
 JavaScript (JS) est un langage de programmation léger, interprété ou compilé juste à
temps (JIT compilation).
 Il a été créé en 1995 par Brendan Eich (former CEO of Mozilla)
 La norme pour JavaScript est appelée ECMAScript
 Ne confondez pas JavaScript avec le langage de programmation Java. les deux
langages de programmation ont une syntaxe, sémantique et une utilisation très
différente

Mr. JADLI AISSAM 4

ESTEM 2020 2
Mr. JADLI AISSAM 27/11/2020

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

Historique JavaScript

Mr. JADLI AISSAM 5

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

Node.js : le JavaScript côté serveur

Utilisation classique du JavaScript

Mr. JADLI AISSAM 6

ESTEM 2020 3
Mr. JADLI AISSAM 27/11/2020

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

Node.js : le JavaScript côté serveur

Utilisation de NodeJS

Mr. JADLI AISSAM 7

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

Le Moteur V8
Node.js utilise le moteur d'exécution ultra-rapide V8 de Google Chrome. C'est un
outil open source créé par Google qui analyse et exécute du code JavaScript très
rapidement.

Il gère également l’allocation de mémoire pour les programmes


JavaScript. L’attribution et la répartition de la mémoire aux
objets, le garbage-collection.

Mr. JADLI AISSAM 8

ESTEM 2020 4
Mr. JADLI AISSAM 27/11/2020

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

NodeJS Architecture
L’univers NodeJS est composé de quatre parties distincts :
 Le code applicatif JavaScript que nous écrivons;
 Le moteur d’exécution V8
 libuv qui est une bibliothèque C++ multiplateforme
qui prend en charge les opérations asynchrones E/S
 Node qui agit comme un intermédiaire avec les API qui
sont écrites dans les bibliothèques libuv et v8

Mr. JADLI AISSAM 9

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

Le modèle Non-bloquant
 INTRODUCTION

Comme JavaScript est un langage


conçu autour de la notion
d'évènement, Node.js a pu
mettre en place une architecture
de code entièrement non
bloquante.

Mr. JADLI AISSAM 10

ESTEM 2020 5
Mr. JADLI AISSAM 27/11/2020

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

Le modèle Non-bloquant
 EXEMPLE

La requête de téléchargement est lancée en premier. Ensuite, le programme fait


d'autres choses. Dès que le téléchargement est terminé, le programme va à la ligne 2
et affiche "Fichier téléchargé !".

Mr. JADLI AISSAM 11

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

Le modèle Non-bloquant
 EXEMPLE(2)

Modèle bloquant Modèle non-bloquant

Mr. JADLI AISSAM 12

ESTEM 2020 6
Mr. JADLI AISSAM 27/11/2020

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

Avantages
 Cross-Platform

 Une syntaxe bien connue des développeurs web

 Un système complètement ou partiellement asynchrone particulièrement adapté

aux application en real-time (RTA) : Messagerie instantanée, IoT, VoIP, …etc.

 Gestionnaire de paquets intégré : npm

 Communauté Importante et active.

Mr. JADLI AISSAM 13

INTRODUCTION PHILOSOPHIE DE NODEJS E n v i r o n n e m e nt d e Tr a v a i l

Inconvénients

 L’apprentissage et la compréhension du modèle Asynchrone est plus

difficile par rapport au modèle bloquant standard.

 Non adapté aux traitement qui demande beaucoup de ressources.

 Cycle d’évolution parfois trop rapide avec des évolutions majeurs à

chaque version.

Mr. JADLI AISSAM 14

ESTEM 2020 7
Mr. JADLI AISSAM 27/11/2020

INTRODUCTION PHILOSOPHIE DE NODEJS E N V I R O N N E M E N T D E T R AVA I L

Installation de NodeJS
Pour installer Node.js sous
Windows, il suffit de télécharger
l'installeur qui est proposé sur le
site:
https://www.nodejs.org
Puis Sélectionner simplement la
version à Installer.

Mr. JADLI AISSAM 15

INTRODUCTION PHILOSOPHIE DE NODEJS E N V I R O N N E M E N T D E T R AVA I L

Installation de NodeJS

Lancer l’installation et suivre les


étapes du processus jusqu’à la
fin de la procédure.

Mr. JADLI AISSAM 16

ESTEM 2020 8
Mr. JADLI AISSAM 27/11/2020

INTRODUCTION PHILOSOPHIE DE NODEJS E N V I R O N N E M E N T D E T R AVA I L

Usage
A la fin de l’installation, 2 programmes dont installés :

 Node.js : c'est l'interpréteur de commandes de NodeJS. Il est utilisé assez peu en


pratique. Il sert surtout à tester des instructions JS.

 Node.js command prompt : c'est une console de Windows configurée pour


reconnaître Node.js. Elle sert à lancer nos scripts Node.js

Mr. JADLI AISSAM 17

INTRODUCTION PHILOSOPHIE DE NODEJS E N V I R O N N E M E N T D E T R AVA I L

Usage

Mr. JADLI AISSAM 18

ESTEM 2020 9
Mr. JADLI AISSAM 27/11/2020

INTRODUCTION PHILOSOPHIE DE NODEJS E N V I R O N N E M E N T D E T R AVA I L

Exemple : Hello World


Pour commencer, ouvrez votre éditeur de texte favori (vim, Emacs, Sublime Text,
Notepad++...) et rentrez le code JavaScript suivant :

console.log(‘Hello World !');

Pour lancer le fichier crée, on utilise la syntaxe suivante :


node < chemin_du_fichier.js >

Mr. JADLI AISSAM 19

TRAVAUX PRATIQUES
Mr. JADLI AISSAM 20

ESTEM 2020 10
Mr. JADLI AISSAM 27/11/2020

Tester vos Connaissances


Mr. JADLI AISSAM 21

Quiz NodeJS
Node.js est un Framework très complet comparable à Symfony2
ou Django en termes de fonctionnalités :

 Vrai
1
 Faux

Mr. JADLI AISSAM 22

ESTEM 2020 11
Mr. JADLI AISSAM 27/11/2020

Quiz NodeJS
Sur quel langage est basé Node.js ?

 Java

 JavaScript
2
 Python

 PHP

Mr. JADLI AISSAM 23

Quiz NodeJS
Laquelle de ces affirmations sur le fonctionnement de Node.js
est vraie ?
 Node.js s'exécute dans le navigateur du visiteur

 Node.js est basé sur un modèle de programmation non bloquant


3
 Node.js peut exécuter 2 instructions exactement au même

instant, à la même nanoseconde

 Node.js est plus bas niveau que l'assembleur


Mr. JADLI AISSAM 24

ESTEM 2020 12
Mr. JADLI AISSAM 27/11/2020

Quiz NodeJS
Pour quel navigateur a été développé à l'origine le moteur
JavaScript v8 dont tire partie Node.js ?

 Firefox
4  Microsoft Internet Explorer

 Opera

 Chrome
Mr. JADLI AISSAM 25

Quiz NodeJS
Node.js est exécute ses instructions en mode :

 Monothread

 Multithread
5
 Megathread

 Overthread

Mr. JADLI AISSAM 26

ESTEM 2020 13
Mr. JADLI AISSAM 27/11/2020

Quiz NodeJS
Sous quel type de serveur web Node.js s'exécute-t-il par défaut ?

 Apache

 Microsoft IIS
6
 Nginx

 Node.js permet de lancer son propre serveur web

Mr. JADLI AISSAM 27

Quiz NodeJS
NodeJS est idéal pour :

 Les applications de messagerie instantanée

7  Les applications de conversion de vidéos online

 Les applications de utilisant les Websockets

Mr. JADLI AISSAM 28

ESTEM 2020 14
Mr. JADLI AISSAM 27/11/2020

Quiz NodeJS
La commande pour exécuter un script NodeJS nommé <test.js> :

 cmd test.js

 nodejs test.js
8
 node test.js

 java test.js

Mr. JADLI AISSAM 29

ESTEM 2020 15

Vous aimerez peut-être aussi