Passer au contenu
27 h

Web

5$/h – Nest JS – Développement Backend

Objectif :

Le participant apprendra à structurer une application NestJS, gérer les routes, la logique métier, l’accès aux données, l’authentification et la validation des données. 

Contenu:

Module 1 : Introduction au développement backend et à NestJS
• Rôle et responsabilités d’un backend
• Fonctionnement d’une API REST
• Présentation de NestJS et de son écosystème
• Différences entre NestJS et Express
• Structure générale d’un projet NestJS

Module 2 : Architecture et concepts fondamentaux de NestJS
• Modules et organisation de l’application
• Contrôleurs (Controllers)
• Services et logique métier
• Injection de dépendances
• Cycle de vie d’une requête

Module 3 : Routes et gestion des requêtes HTTP
• Méthodes HTTP (GET, POST, PUT, DELETE)
• Paramètres de route, query et body
• Gestion des réponses HTTP
• Bonnes pratiques REST

Module 4 : Validation des données et gestion des erreurs
• DTO (Data Transfer Objects)
• Validation avec class-validator
• Pipes de validation
• Gestion centralisée des erreurs
• Filtres d’exception

Module 5 : Accès aux données et bases de données
• Introduction aux bases de données relationnelles
• ORM et concepts de base
• Intégration avec TypeORM ou Prisma
• Entités / Modèles
• Opérations CRUD avec la base de données

Module 6 : Authentification et sécurité de base
• Concepts de sécurité backend
• Authentification avec JWT
• Guards et protection des routes
• Rôles et permissions (niveau de base)
• Bonnes pratiques de sécurité

Module 7 : Tests et documentation de l’API
• Importance des tests backend
• Tests unitaires avec NestJS
• Tests end-to-end (e2e)
• Documentation avec Swagger (OpenAPI)

Module 8 : Déploiement cloud d’une API REST
• Concepts de base du déploiement cloud
• Variables d’environnement
• Build et configuration de production
• Déploiement d’une API NestJS sur le cloud (ex. Google Cloud Run, Render ou autre)
• Vérification et tests post-déploiement

 

Préalables

• Notions générales en informatique
• Connaissance de base en JavaScript / TypeScript
• Notions de base en développement web (HTTP, API,REST)