M2I FORMATION : 08. Node JS - Développement d'applications web
Organisme
92400 COURBEVOIEVoir toutes ses formationsAutres organismes proposant cette formation
Durée
Modalités
- Classe virtuelle
- Présentiel
L’évaluation des acquis se fait en cours de formation, par des études de cas ou des travaux pratiques et, en fin de formation, par un questionnaire
Prix
Public
Développeurs, architectes techniques, chefs de projet Web…
Pré-requis
Avoir des connaissances pratiques du langage Javascript.
Objectifs pédagogiques
- Comprendre les principes clés de Node.js
- Se familiariser avec les composants de la plateforme logicielle
- Installer et configurer un serveur Node.js
- Mettre en œuvre les concepts de la programmation événementielle et asynchrone
- Manipuler l'API de Node.js
- Appliquer les bonnes pratiques à un projet Vue.js
Programme détaillé
Jour 1 matin
§ Impacts architecturaux
Rappels JavaScript en ECMAScript 6
Présentation rapide de NPM (Node Package Manager)
Les modules dans Node.js
Apports de N-API dans les dernières versions
Présentation de Node.js
Utilisation de REPL (Read Eval Print Loop)
Intérêts de JavaScript côté serveur
Asynchronisme, programmation évènementielle
Stateless
§ Asynchronisme avec Node
Logique asynchrone
Des callbacks partout
Nested callbacks
Gestion d'erreurs
Patterns asynchrones
Exemple de travaux pratiques (à titre indicatif)
Conception d'un premier programme Node.js pour comprendre l'aspect asynchrone du langage
Jour 1 après-midi
§ Node API
Global objects
Node Event Loop
Event et EventEmitter
Process objects
Gestion des processus fils
Timers
Les Worker Threads
Exemple de travaux pratiques (à titre indicatif)
Traitement des évènements avec Node.js
§ Modules
Inclusion de modules avec require
Résolution des noms, chemins et fichiers
Modules populaires avec :
- Console
- Util
- Timers...
Exemple de travaux pratiques (à titre indicatif)
Présentation et utilisation des modules les plus utiles
Jour 2 matin
§ Programmation serveur
Rappels de la programmation asynchrone
Modules HTTP et NET
Modules DNS et URL
Module FS (File System)
Connect
Ressources statiques
Moteurs de templates
Templates avec EJS
Exemples de travaux pratiques (à titre indicatif)
Utilisation des modules HTTP, NET, DNS et URL
Utilisation du module FS
Création d'une application Web avec EJS
Jour 2 après-midi
§ Back end
Modes de connexion
Accès MongoDB
Accès Redis
Accès MySQL
ORM pour Node.js
Exemples de travaux pratiques (à titre indicatif)
Ajout de l'accès à une base de données MySQL depuis Node.js
Accès via l'API
Accès via l'ORM Sequelize
§ Node Package Manager
Commandes NPM
Packager un module
Installation locale ou globale
Exemple de travaux pratiques (à titre indicatif)
Utilisation de diverses commandes importantes de NPM en local et global
Jour 3 matin
§ Express Web Framework
Configuration
API Requêtes et Réponses
API Routes
Présentation de REST
Création d'une API REST
Exemples de travaux pratiques (à titre indicatif)
Mise en oeuvre d'une application serveur Web avec Express Web
Création d'API REST accédant à la base MySQL et répondant en JSON à un client JavaScript
Exemples de travaux pratiques (à titre indicatif)
Création d'une application mettant en oeuvre les Web Sockets côté serveur avec Socket.IO
Exploitation des messages depuis une application JavaScript client
Jour 3 après-midi
§ Développement et déploiement d'une application
Création de l'application serveur en Node.js
Création de l'application cliente avec le framework Vue.js
Déploiement
Test
Exemples de travaux pratiques (à titre indicatif)
Création et déploiement d'une application
§ Tests
Test avec Mocha
Assertions