Organisme de Formation aux technologies et métiers de L'informatique
javascript

Formation Node.js, programmation JavaScript côté serveur

Informations générales

NJS
4 jours (28h)
2 390 €HT
repas inclus

Objectifs

Après ce cours, vous serez capable de :

  • Installer et configurer un serveur Node.js
  • Mettre en œuvre les concepts de la programmation événementielle et asynchrone
  • Mettre en place un framework Web
  • Manipuler l'API de Node.js
  • Gérer la persistance dans une base de données NoSQL avec un ODM

Public

Ce cours s'adresse avant tout aux personnes suivantes :

  • développeurs
  • architectes techniques
  • chefs de projet Web

Prérequis

Pour suivre ce cours, vous devez déjà posséder les connaissances suivantes :

  • Bonnes connaissances du langage Javascript
  • Une première approche d'un framework JavaScript (côté client) serait un plus

Programme de la formation

Cette formation vous apprendra à développer des applications réactives et performantes avec Node.js. Vous mettrez en œuvre les concepts de programmation événementielle et asynchrone, de modularité et de routage. Vous utiliserez également les API de Node.js et assurerez la persistance de vos données dans une base NoSQL.

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.
  •  Travaux pratiques  Usage de l'utilitaire NPM. Développer une première application.

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...
  • Travaux pratiques   Lecture de fichier, lecture d'une ressource en ligne, création d'un processus fils avec communication IPC.

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.
  • Travaux pratiques   Mise en place d'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.
  • Travaux pratiques   Mise en place d'une API REST complète.

Persistance des données

  • Initiation à une base NoSQL : MongoDB.
  • Mise en place de CRUD (Create, Read, Update, Delete).
  • Utilisation d'un ODM : Mongoose.
  • Travaux pratiques   Gestion d'une persistance au travers d'un ODM avec création des modèles.

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...).
  • Le support du navigateur.
  • Travaux pratiques   Tester une application avec Mocha.

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 retro-compatibilité, les transpilers...

Etude de cas

  • Construction d'une application SPA (Single Page Application) en abordant les thématiques de la programmation asynchrone, l'injection...
plus d'infos

Méthode pédagogique

Chaque participant travaille sur un poste informatique qui lui est dédié. Un support de cours lui est remis soit en début soit en fin de cours. La théorie est complétée par des cas pratiques ou exercices corrigés et discutés avec le formateur. Le formateur projette une présentation pour animer la formation et reste disponible pour répondre à toutes les questions.

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.

Mis à jour le 08/11/2023