Développer un backend en NodeJS avec le framework NestJS
Besoin d’adapter cette formation à vos besoins ?
N’hésitez pas à nous contacter afin d’obtenir un devis sur mesure !
Formation créée le 10/05/2023. Dernière mise à jour le 18/09/2024.
Version du programme : 1
Programme de la formation
Cette formation abordera les différentes subtilités de NestJS et vous permettra de devenir opérationnel dans le développement de backend NodeJS en utilisant ce framework. Durée : 5 jours (formation possible en présentiel ou distanciel). Le dernier chapitre "Tirer pleinement parti de l'usage de NestJS" comprend une liste de sujets parmi lesquels il est possible d'effectuer une sélection : tous les sujets ne seront pas forcément aborder, cela va dépendre du temps nécessaire pour les rappels sur NodeJS (partie 1 de la formation) et des besoins des apprenants.
Objectifs de la formation
- Maîtriser les bases de JavaScript et TypeScript pour le développement avec NestJS
- Appréhender l'architecture et les concepts clés de NestJS
- Créer et configurer une application REST avec NestJS
- Organiser le code avec les modules, les contrôleurs et les providers
- Appréhender l'injection de dépendance et créer des services
- Savoir utiliser les intercepteurs et les middleware intervenir dans le processus de traitement
- Pouvoir écrire des tests pour son application NestJS
Profil des bénéficiaires
- Développeurs web
- Développeurs mobile
- Chefs de projet technique
- Connaissance de Javascript
- Connaissance basique de Typescript
- Connaissance de NodeJS : les bases seront revues rapidement mais le fait de bien connaître NodeJS / ou d'avoir suivi une formation NodeJS (par exemple la formation "Réaliser des applications Javascript côté serveur avec NodeJS") est un gros plus
- Une connaissance front de Angular peut être pratique pour comprendre certains concept approchants
Contenu de la formation
-
Revoir les bases de Node.JS
- Rappels de Javascript
- Typer tout cela avec Typescript
- Rappels de Node.JS
-
Découvrir NestJS
- Comprendre les intérêts de NestJS
- Installer correctement son environnement
- Appréhender l'architecture de NestJS et de ses composants
- Faire le parallèle avec Angular
-
Développer une application REST avec NestJS
- Utiliser les modules
- Créer ses controllers
- Mettre en place son routing
- Gérer les payload de requêtes et les réponses
- Ajouter des paramètres
- Implémenter les middlewares
- Utiliser les intercepteurs pour logger
- Valider les données avec les Pipes
-
Mettre en place des providers
- Appréhender l’injection de dépendance
- Créer un service simple
- Utiliser les repositories pour interagir avec les bases de données
- Gérer les transactions avec les bases de données
-
Protéger son application via l’authentification
- Comprendre les principes de l'authentification et des autorisations
- Mettre en place une authentification basique
- Utiliser des Guards pour protéger les routes et les ressources
- Gérer des tokens JWT (JSON Web Tokens)
- Mettre en place des Sessions
- Implémenter Passport.js
-
Tests et déploiement
- Écrire des tests unitaires
- Mettre en place des mock
- Poursuivre sur les tests d’intégration
- Gérer des variables d'environnement
- Déployer notre application en production
-
Tirer pleinement parti de l'usage de NestJS
- Générer son swagger automatiquement
- Mettre en place des tâches planifiées
- Gérer ses exceptions avec les filtres
- Ajouter de la communication bi-directionnelle avec WebSocket
- Gérer le cache et optimiser les performances
- Sécuriser son application (CORS/CSRF, etc.)
- Servir du contenu statique
- Bonnes pratiques et recommandations pour le développement avec NestJS
- Comprendre l’importance des Twelve Factors
- Mettre en place du GraphQL avec NestJS
- Utiliser NestJS pour des micro-services
- Communiquer avec une base de données NoSQL
- Travailler avec des fichier (upload, multipart)
Antoine Précigout est développeur full-stack et leader technique depuis 2012. Il a travaillé en ESN pour le compte d'un grand ministère, dans le monde de l'édition logiciel et des ERP et enfin dans le domaine des applications web et mobile. Passionné par l'industrialisation et la mise en place de bonnes pratiques, il développe tous ses projets dans cette optique. De par son métier et ses principes, le transfert de connaissances et l'accompagnement font partie des choses incontournables pour Antoine.
- Feuilles de présence
- Questions orales ou écrites (QCM)
- Mise en pratique sous forme de TP de code tout au long de la formation
- Formulaires d'évaluation de la formation
- Certificat de réalisation de l’action de formation
- Accueil des apprenants dans une salle dédiée à la formation (si présentiel)
- Présentation du support via vidéoprojecteur (ou partage visio)
- Cours théoriques avec des présentations de cas d’exemple
- Live-coding
- Mise en pratique sous forme de TP de code tout au long de la formation
- Support PDF remis en fin de formation ainsi que documents créés lors des mises en pratique