Node.js
Description
La formation aborde les contenus techniques suivants :
-
Le fonctionnement d’un serveur Node.js
-
Le fonctionnement de la programmation événementielle et asynchrone
-
Le fonctionnement d’un Framework Web Back-end
-
L’API de Node.js
-
La persistance des données
Quels sont les buts de la formation ?
Les objectifs visés par cette formation sont :
-
Installation et configuration de Node.js
-
Mettre en oeuvre une programmation événementielle asynchrone
-
Mettre en place le Framework Node.js
-
Utiliser l’API Node.js
-
Mettre en place la persistance des données
Que devez vous connaître pour suivre la formation ?
Connaissances préalables de Javascript
Programme de la formation
Du JavaScript côté serveur
• Genèse du JavaScript côté serveur et de Node.js
• Le moteur Google V8 utilisé côté serveur
• Pourquoi utiliser la programmation événementielle ?
• Rappels JavaScript : callbacks, closures, notion de scope, apply, bind, call
• Initiation à ECMAScript 6
Premiers pas en Node.js
• Installation du serveur
Node.js
• Le gestionnaire d'extensions NPM
• L'approche modulaire de Node.js
• Un serveur Web en quelques lignes
• Utilisation de Node.js en REPL
Les fondamentaux Node.js
• Quel intérêt de développer en asynchrone ?
• La gestion événementielle : réagir plutôt qu'attendre
• Principaux modules de l'API : console, util, file, events & timer...
• Gestion des requêtes/réponses HTTP. HTTPS
• Création de processus fils, https, sockets TCP et UDP...
La gestion de routes
• Parsing d'URL (paramètres, requête...)
• Traiter une requête en mode asynchrone
• Mettre en place un gestionnaire de routes
Framework Web
• Les concepts fondamentaux d'Express
• Construction d'un squelette d'application
• Configuration d'Express et de l'application
• Le rendu de vues avec EJS
• La gestion de formulaires et des uploads de fichiers
• Le routage d'URL par Express
• Mise en place d'une API REST
Persistance des données
• Initiation à une base NoSQL : MongoDB
• Mise en place de CRUD (Create, Read, Update, Delete)
• Utilisation d'un ODM : Mongoose
Test d'une application Node.js
• Premiers pas avec Mocha
• Les assertions et le test synchrone et asynchrone
• Différentes méthodes de tests (inclusifs, exclusifs...)
Concept avancés
• Bonnes pratiques de développement en Node.js
• La bibliothèque async : rendre l'asynchrone séquentiel
• Le clustering avec Node.js. la rétro-compatibilité, les transpilers...
Exercices pratiques
• Développer une application avec l’utilitaire NPM
• Lecture de fichiers, lecture de ressources, et utilisation de IPC
• Mettre en place un gestionnaire de routes
• Mettre en place une API REST
• Gérer de la persistance au travers d’un ODM • Mettre en place des tests avec Mocha