SlideShare une entreprise Scribd logo
ERYEM
DAYS
Introduction à Node.js
1
Présenté par : Sonam TCHEUTSEUN
sTCHEUTSEUN@eryem.com
https://lnkd.in/dkMyd_4
Présentation
2
Sonam TCHEUTSEUN
Consultante SharePoint
sTCHEUTSEUN@eryem.com
https://lnkd.in/dkMyd_4
Une consultante SharePoint passionnée par les
technologies Microsoft et toujours à la recherche de la
nouveautés
Plan
I. Petite histoire de Node.js
II. Possibilités de Node.js
III. Structure d’une application
IV. Les packages essentiels
3
Logo du
client
I. Petite histoire de Node.js
4
5
Historique
 Crée par Rayan Lienhart Dahl en 2009
 Un environnement d’exécution JavaScript
 Basé sur le moteur V8 de Google Chrome
 Écrit en C/C++
 Grosse communauté, mais encore très jeune
• Monothread et scalable
• S’appuie uniquement sur le JavaScript (serveur et client)
• JavaScript hors du navigateur
• Requêtes asynchrones (Gestion E/S non-bloquant )
• Rapide et évolutif
• Piloté par les événements
• Un fichier peut s’exécuter sans aucun paramétrage
6
Particularités
Logo du
client
II. Possibilités de Node.js
7
Utilisations
8
 Pas un simple serveur web
• Applications console
• Services réseau sur mesure (proxies)
• Applications avec GUI (Graphical User Interface)
• Outils de ligne de commandes
• APIs
• Support des sockets
• Répondre à des requêtes rapidement et efficacement en temps réel
• Exemples d’utilisation:
• Yammer, Yahoo, WalMart, Linkedin, eBay …
Installation
• Installer Node.js sur http://nodejs.org/
• deux programmes installés :
• Node.js command prompt
• Une console de Windows configurée pour reconnaître Node.js
• Lancer vos programmes Node.js
• NPM
• Gestionnaire de package de Node.js
9
Logo du
client
III. Structure d’une application
10
Modules Node.js
11
• Environnement modulaire
• Exemple de modules inclus :
• « fs » : système de fichier
• « net »: réseau, TCP
• « crypto»: cryptographie
• « HTTP »: serveur web
La structure des fichiers
• Package.json :
• Contiens les informations relatives au projet :
• Name, version, licences …
• Dependencies : liste des modules dont le projet dépend
• + des informations relatives à la publication du module et son installation
• Modules
• Scopes : locaux au projet, ou globaux
• Dépôt local : node_modules
• Fichier js
• Dossier client
12
Logo du
client
VI. Les packages essentiels
13
Express
• Framework Web complet
• basé sur le modèle MVC
• Egalement utilisé pour créer des APIs
• Mises à jour régulières
• Homepage : http://expressjs.com:
• npm install express --save
14
Request et Socket.io
• Request
• Un client HTTP
• Utilisable avec tout type d’API
• Socket.io
• Permets d’utiliser des sockets
• Ex : une application : Chat
15
D’autre module
• Passport :
• Facilitate l’utilisation de OAuth (Token)
• Module : Passeport-SharePoint (2013 OnPremise, Office 365)
• Compatible avec les APIs
• Facebook
• Twitter
• Google
• Et bien d’autres
• Q :
• Promesses en JavaScript
16
Démo
17
18
1. Installation Node.js
2. Création du
package.json et des
modules nécessaires
3. Crée un ficher app.js
avec le code
JavaScript
4. Ouvrir l’invite de
commandes
5. Exécuter le ficher
app.js crée avec
commande: node
app.js
Utilisation : express et request
19
Utilisation : express et request
Affiche la page web :
Eryem.com sur
localhost:3000/eryem
20
Utilisation : socket
21
Utilisation : Socket
Plus information sur :
https://github.com/Automattic/socket.io/tree/master/example
s/chat
22
Utilisation : socket
23
Conclusion
 Node.js
 Pas une solution « Clés en main »
 Code bas niveau
 SharePoint 2013
• Envoie des données
• Opération lourde d’E /S
• Connexions simultanées ouvertes
24
http://nodegeek.net
http://nodejs.org
https://github.com
25
Merci pour votre attention

Contenu connexe

Tendances

Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
ENSET, Université Hassan II Casablanca
 
Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3
Abel LIFAEFI MBULA
 
Fascicule de tp atelier développement web
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement web
Houda TOUKABRI
 
Introduction a Flutter
Introduction a FlutterIntroduction a Flutter
Introduction a Flutter
Christian SUMBANG
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
ENSET, Université Hassan II Casablanca
 
Support de cours Spring M.youssfi
Support de cours Spring  M.youssfiSupport de cours Spring  M.youssfi
Support de cours Spring M.youssfi
ENSET, Université Hassan II Casablanca
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependances
ENSET, Université Hassan II Casablanca
 
Modélisation de données pour MongoDB
Modélisation de données pour MongoDBModélisation de données pour MongoDB
Modélisation de données pour MongoDB
MongoDB
 
Formation JPA Avancé / Hibernate gratuite par Ippon 2014
Formation JPA Avancé / Hibernate gratuite par Ippon 2014Formation JPA Avancé / Hibernate gratuite par Ippon 2014
Formation JPA Avancé / Hibernate gratuite par Ippon 2014
Ippon
 
Maven et industrialisation du logiciel
Maven et industrialisation du logicielMaven et industrialisation du logiciel
Maven et industrialisation du logiciel
ENSET, Université Hassan II Casablanca
 
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce  Basé sur Spring IOC MVC Security JPA HibernateSite JEE de ECommerce  Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
ENSET, Université Hassan II Casablanca
 
Présentation Flutter
Présentation FlutterPrésentation Flutter
Présentation Flutter
Appstud
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Mehdi Hamime
 
Introduction à Laravel
Introduction à LaravelIntroduction à Laravel
Introduction à Laravel
Abdoulaye Dieng
 
Support JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVCSupport JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVC
ENSET, Université Hassan II Casablanca
 
Support Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFISupport Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFI
ENSET, Université Hassan II Casablanca
 
Introduction à Angular
Introduction à AngularIntroduction à Angular
Introduction à Angular
Jean-Baptiste Vigneron
 
Introduction à React
Introduction à ReactIntroduction à React
Introduction à React
Abdoulaye Dieng
 
Cours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partieCours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partie
kadzaki
 
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
ENSET, Université Hassan II Casablanca
 

Tendances (20)

Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
 
Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3
 
Fascicule de tp atelier développement web
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement web
 
Introduction a Flutter
Introduction a FlutterIntroduction a Flutter
Introduction a Flutter
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
 
Support de cours Spring M.youssfi
Support de cours Spring  M.youssfiSupport de cours Spring  M.youssfi
Support de cours Spring M.youssfi
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependances
 
Modélisation de données pour MongoDB
Modélisation de données pour MongoDBModélisation de données pour MongoDB
Modélisation de données pour MongoDB
 
Formation JPA Avancé / Hibernate gratuite par Ippon 2014
Formation JPA Avancé / Hibernate gratuite par Ippon 2014Formation JPA Avancé / Hibernate gratuite par Ippon 2014
Formation JPA Avancé / Hibernate gratuite par Ippon 2014
 
Maven et industrialisation du logiciel
Maven et industrialisation du logicielMaven et industrialisation du logiciel
Maven et industrialisation du logiciel
 
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce  Basé sur Spring IOC MVC Security JPA HibernateSite JEE de ECommerce  Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
 
Présentation Flutter
Présentation FlutterPrésentation Flutter
Présentation Flutter
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
 
Introduction à Laravel
Introduction à LaravelIntroduction à Laravel
Introduction à Laravel
 
Support JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVCSupport JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVC
 
Support Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFISupport Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFI
 
Introduction à Angular
Introduction à AngularIntroduction à Angular
Introduction à Angular
 
Introduction à React
Introduction à ReactIntroduction à React
Introduction à React
 
Cours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partieCours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partie
 
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
 

En vedette

Présentation de Node.js
Présentation de Node.jsPrésentation de Node.js
Présentation de Node.js
Mickael Couzinet
 
A language for the Internet: Why JavaScript and Node.js is right for Internet...
A language for the Internet: Why JavaScript and Node.js is right for Internet...A language for the Internet: Why JavaScript and Node.js is right for Internet...
A language for the Internet: Why JavaScript and Node.js is right for Internet...
Tom Croucher
 
Formation JavaScript full-stack (JS, jQuery, Node.js...)
Formation JavaScript full-stack (JS, jQuery, Node.js...)Formation JavaScript full-stack (JS, jQuery, Node.js...)
Formation JavaScript full-stack (JS, jQuery, Node.js...)
guicara
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascript
Khalid Jebbari
 
Node.js Module Resolution by visual example
Node.js Module Resolution by visual exampleNode.js Module Resolution by visual example
Node.js Module Resolution by visual example
Jeff Kunkle
 
publier une application Node sur heroku
publier une application Node sur herokupublier une application Node sur heroku
publier une application Node sur herokueric German
 
Realtime webapp with node.js
Realtime webapp with node.jsRealtime webapp with node.js
Realtime webapp with node.js
robin_sy
 
Node.js
Node.jsNode.js
Building fast,scalable game server in node.js
Building fast,scalable game server in node.jsBuilding fast,scalable game server in node.js
Building fast,scalable game server in node.js
Xie ChengChao
 
JavaScript dans l'usine logicielle
JavaScript dans l'usine logicielleJavaScript dans l'usine logicielle
JavaScript dans l'usine logicielle
jollivetc
 
Cours uml
Cours umlCours uml
Cours uml
zimamouche1
 
Introduction to node.js
Introduction to node.jsIntroduction to node.js
Introduction to node.js
jacekbecela
 
Notions de base de JavaScript
Notions de base de JavaScriptNotions de base de JavaScript
Notions de base de JavaScript
Kristen Le Liboux
 
Modélisation avec UML
Modélisation avec UMLModélisation avec UML
Modélisation avec UML
ECAM Brussels Engineering School
 
In01 - Programmation Android - 07 - techniques avancées
In01 - Programmation Android - 07 - techniques avancéesIn01 - Programmation Android - 07 - techniques avancées
In01 - Programmation Android - 07 - techniques avancées
Yann Caron
 
NodeJs, une introduction
NodeJs, une introductionNodeJs, une introduction
NodeJs, une introduction
Toxicode
 
AngularJS - Présentation (french)
AngularJS - Présentation (french)AngularJS - Présentation (french)
AngularJS - Présentation (french)
Yacine Rezgui
 
Scalability using Node.js
Scalability using Node.jsScalability using Node.js
Scalability using Node.js
ratankadam
 
Diapo sécurité & défense
Diapo sécurité & défenseDiapo sécurité & défense
Diapo sécurité & défense
CDI du Lycée Jules Fil
 
Entreprise 2.0 : Charte rse socialmedia
Entreprise 2.0 : Charte rse socialmediaEntreprise 2.0 : Charte rse socialmedia
Entreprise 2.0 : Charte rse socialmediaOlivier Berard
 

En vedette (20)

Présentation de Node.js
Présentation de Node.jsPrésentation de Node.js
Présentation de Node.js
 
A language for the Internet: Why JavaScript and Node.js is right for Internet...
A language for the Internet: Why JavaScript and Node.js is right for Internet...A language for the Internet: Why JavaScript and Node.js is right for Internet...
A language for the Internet: Why JavaScript and Node.js is right for Internet...
 
Formation JavaScript full-stack (JS, jQuery, Node.js...)
Formation JavaScript full-stack (JS, jQuery, Node.js...)Formation JavaScript full-stack (JS, jQuery, Node.js...)
Formation JavaScript full-stack (JS, jQuery, Node.js...)
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascript
 
Node.js Module Resolution by visual example
Node.js Module Resolution by visual exampleNode.js Module Resolution by visual example
Node.js Module Resolution by visual example
 
publier une application Node sur heroku
publier une application Node sur herokupublier une application Node sur heroku
publier une application Node sur heroku
 
Realtime webapp with node.js
Realtime webapp with node.jsRealtime webapp with node.js
Realtime webapp with node.js
 
Node.js
Node.jsNode.js
Node.js
 
Building fast,scalable game server in node.js
Building fast,scalable game server in node.jsBuilding fast,scalable game server in node.js
Building fast,scalable game server in node.js
 
JavaScript dans l'usine logicielle
JavaScript dans l'usine logicielleJavaScript dans l'usine logicielle
JavaScript dans l'usine logicielle
 
Cours uml
Cours umlCours uml
Cours uml
 
Introduction to node.js
Introduction to node.jsIntroduction to node.js
Introduction to node.js
 
Notions de base de JavaScript
Notions de base de JavaScriptNotions de base de JavaScript
Notions de base de JavaScript
 
Modélisation avec UML
Modélisation avec UMLModélisation avec UML
Modélisation avec UML
 
In01 - Programmation Android - 07 - techniques avancées
In01 - Programmation Android - 07 - techniques avancéesIn01 - Programmation Android - 07 - techniques avancées
In01 - Programmation Android - 07 - techniques avancées
 
NodeJs, une introduction
NodeJs, une introductionNodeJs, une introduction
NodeJs, une introduction
 
AngularJS - Présentation (french)
AngularJS - Présentation (french)AngularJS - Présentation (french)
AngularJS - Présentation (french)
 
Scalability using Node.js
Scalability using Node.jsScalability using Node.js
Scalability using Node.js
 
Diapo sécurité & défense
Diapo sécurité & défenseDiapo sécurité & défense
Diapo sécurité & défense
 
Entreprise 2.0 : Charte rse socialmedia
Entreprise 2.0 : Charte rse socialmediaEntreprise 2.0 : Charte rse socialmedia
Entreprise 2.0 : Charte rse socialmedia
 

Similaire à Introduction à Node.js

Node.js dans Windows Azure mobile services et web sites
Node.js dans Windows Azure mobile services et web sitesNode.js dans Windows Azure mobile services et web sites
Node.js dans Windows Azure mobile services et web sitesMicrosoft
 
Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web servicesoussemos
 
Introduction à meteor
Introduction à meteorIntroduction à meteor
Introduction à meteor
Fabian Vilers
 
Nuxt.js et les applications isomorphiques (Universelles/SSR)
Nuxt.js et les applications isomorphiques (Universelles/SSR)Nuxt.js et les applications isomorphiques (Universelles/SSR)
Nuxt.js et les applications isomorphiques (Universelles/SSR)
Joffrey LEVEUGLE
 
Javascript & tools
Javascript & toolsJavascript & tools
Javascript & tools
Slim Soussi
 
Autour de Node.js - TechConf#3
Autour de Node.js - TechConf#3Autour de Node.js - TechConf#3
Autour de Node.js - TechConf#3
Luc Juggery
 
2014.12.11 - TECH CONF #3 - Présentation Node.js
2014.12.11 - TECH CONF #3 - Présentation Node.js2014.12.11 - TECH CONF #3 - Présentation Node.js
2014.12.11 - TECH CONF #3 - Présentation Node.js
TelecomValley
 
Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)
Chamseddine Ouerhani
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
Restlet
 
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Cedric Girard
 
JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?
Microsoft
 
Meteor js 1.0
Meteor js 1.0Meteor js 1.0
Meteor js 1.0
Erwan Boulard
 
JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?
benjguin
 
Server Side Javascript in the cloud
Server Side Javascript in the cloudServer Side Javascript in the cloud
Server Side Javascript in the cloud
stefounet
 
Les framework mvc
Les framework mvcLes framework mvc
Les framework mvc
Alloin Théo
 
Saas Libre
Saas LibreSaas Libre
Saas Libre
grolland
 
Node.js dans Azure
Node.js dans AzureNode.js dans Azure
Node.js dans Azure
Microsoft
 
Aspectize meetup
Aspectize meetupAspectize meetup
Aspectize meetup
Aspectize
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)
Vincent Biret
 

Similaire à Introduction à Node.js (20)

Node.js dans Windows Azure mobile services et web sites
Node.js dans Windows Azure mobile services et web sitesNode.js dans Windows Azure mobile services et web sites
Node.js dans Windows Azure mobile services et web sites
 
Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web services
 
Introduction à meteor
Introduction à meteorIntroduction à meteor
Introduction à meteor
 
Nuxt.js et les applications isomorphiques (Universelles/SSR)
Nuxt.js et les applications isomorphiques (Universelles/SSR)Nuxt.js et les applications isomorphiques (Universelles/SSR)
Nuxt.js et les applications isomorphiques (Universelles/SSR)
 
Javascript & tools
Javascript & toolsJavascript & tools
Javascript & tools
 
Autour de Node.js - TechConf#3
Autour de Node.js - TechConf#3Autour de Node.js - TechConf#3
Autour de Node.js - TechConf#3
 
2014.12.11 - TECH CONF #3 - Présentation Node.js
2014.12.11 - TECH CONF #3 - Présentation Node.js2014.12.11 - TECH CONF #3 - Présentation Node.js
2014.12.11 - TECH CONF #3 - Présentation Node.js
 
Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
 
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
Devoteam REX OpenShift DevOps - Red Hat Roadshow Paris - avril 2018
 
JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?
 
Meteor js 1.0
Meteor js 1.0Meteor js 1.0
Meteor js 1.0
 
JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?
 
Server Side Javascript in the cloud
Server Side Javascript in the cloudServer Side Javascript in the cloud
Server Side Javascript in the cloud
 
Livre Blanc Web temps réel - Node JS
Livre Blanc Web temps réel - Node JSLivre Blanc Web temps réel - Node JS
Livre Blanc Web temps réel - Node JS
 
Les framework mvc
Les framework mvcLes framework mvc
Les framework mvc
 
Saas Libre
Saas LibreSaas Libre
Saas Libre
 
Node.js dans Azure
Node.js dans AzureNode.js dans Azure
Node.js dans Azure
 
Aspectize meetup
Aspectize meetupAspectize meetup
Aspectize meetup
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)
 

Introduction à Node.js

  • 1. ERYEM DAYS Introduction à Node.js 1 Présenté par : Sonam TCHEUTSEUN sTCHEUTSEUN@eryem.com https://lnkd.in/dkMyd_4
  • 2. Présentation 2 Sonam TCHEUTSEUN Consultante SharePoint sTCHEUTSEUN@eryem.com https://lnkd.in/dkMyd_4 Une consultante SharePoint passionnée par les technologies Microsoft et toujours à la recherche de la nouveautés
  • 3. Plan I. Petite histoire de Node.js II. Possibilités de Node.js III. Structure d’une application IV. Les packages essentiels 3
  • 4. Logo du client I. Petite histoire de Node.js 4
  • 5. 5 Historique  Crée par Rayan Lienhart Dahl en 2009  Un environnement d’exécution JavaScript  Basé sur le moteur V8 de Google Chrome  Écrit en C/C++  Grosse communauté, mais encore très jeune
  • 6. • Monothread et scalable • S’appuie uniquement sur le JavaScript (serveur et client) • JavaScript hors du navigateur • Requêtes asynchrones (Gestion E/S non-bloquant ) • Rapide et évolutif • Piloté par les événements • Un fichier peut s’exécuter sans aucun paramétrage 6 Particularités
  • 8. Utilisations 8  Pas un simple serveur web • Applications console • Services réseau sur mesure (proxies) • Applications avec GUI (Graphical User Interface) • Outils de ligne de commandes • APIs • Support des sockets • Répondre à des requêtes rapidement et efficacement en temps réel • Exemples d’utilisation: • Yammer, Yahoo, WalMart, Linkedin, eBay …
  • 9. Installation • Installer Node.js sur http://nodejs.org/ • deux programmes installés : • Node.js command prompt • Une console de Windows configurée pour reconnaître Node.js • Lancer vos programmes Node.js • NPM • Gestionnaire de package de Node.js 9
  • 10. Logo du client III. Structure d’une application 10
  • 11. Modules Node.js 11 • Environnement modulaire • Exemple de modules inclus : • « fs » : système de fichier • « net »: réseau, TCP • « crypto»: cryptographie • « HTTP »: serveur web
  • 12. La structure des fichiers • Package.json : • Contiens les informations relatives au projet : • Name, version, licences … • Dependencies : liste des modules dont le projet dépend • + des informations relatives à la publication du module et son installation • Modules • Scopes : locaux au projet, ou globaux • Dépôt local : node_modules • Fichier js • Dossier client 12
  • 13. Logo du client VI. Les packages essentiels 13
  • 14. Express • Framework Web complet • basé sur le modèle MVC • Egalement utilisé pour créer des APIs • Mises à jour régulières • Homepage : http://expressjs.com: • npm install express --save 14
  • 15. Request et Socket.io • Request • Un client HTTP • Utilisable avec tout type d’API • Socket.io • Permets d’utiliser des sockets • Ex : une application : Chat 15
  • 16. D’autre module • Passport : • Facilitate l’utilisation de OAuth (Token) • Module : Passeport-SharePoint (2013 OnPremise, Office 365) • Compatible avec les APIs • Facebook • Twitter • Google • Et bien d’autres • Q : • Promesses en JavaScript 16
  • 18. 18 1. Installation Node.js 2. Création du package.json et des modules nécessaires 3. Crée un ficher app.js avec le code JavaScript 4. Ouvrir l’invite de commandes 5. Exécuter le ficher app.js crée avec commande: node app.js Utilisation : express et request
  • 19. 19 Utilisation : express et request Affiche la page web : Eryem.com sur localhost:3000/eryem
  • 21. 21 Utilisation : Socket Plus information sur : https://github.com/Automattic/socket.io/tree/master/example s/chat
  • 23. 23 Conclusion  Node.js  Pas une solution « Clés en main »  Code bas niveau  SharePoint 2013 • Envoie des données • Opération lourde d’E /S • Connexions simultanées ouvertes
  • 25. 25 Merci pour votre attention

Notes de l'éditeur

  1. Modulaire : Regroupement de plusieurs brique, :si un pb sur un cela n’affecte pas les restes
  2. C:\Program Files\nodejs\node_modules\npm\bin
  3. Responds "Hello World" pour request : Socket : créer des points de communication d’E/S via le réseau
  4. Passeport-SP : Express, SharePoint 2013 OAuth2
  5. GetHub : Répository : version, publier, collaboration