Vous n’avez pas les permissions requises pour voir les discussions de ce forum.
Résumé de section
-
<< Voir le syllabus >>
-
Introduction au développement Web côté serveur et à Node.js
Contenus
- Évolution du développement Web côté serveur
- Architectures client-serveur
- Présentation des principaux frameworks Back-End
- Introduction à Node.js
- Installation de Node.js et npm
- Présentation de TypeScript
- Installation de NestJS CLI
- Création du premier projet NestJS
- Architecture générale d'une application NestJS
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- expliquer le rôle des frameworks de développement Web côté serveur ;
- installer un environnement de développement Node.js ;
- créer une première application NestJS ;
comprendre l'organisation d'un projet NestJS
-
Architecture NestJS et TypeScript
Contenus
- Structure d'un projet NestJS
- Modules
- Contrôleurs
- Services
- Providers
- Injection de dépendances
- TypeScript avancé
- Architecture modulaire
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- organiser une application selon l'architecture NestJS ;
- développer des modules réutilisables ;
- créer des contrôleurs et des services ;
appliquer les principes de l'injection de dépendances
-
Développement d'API REST
Contenus
- Architecture REST
- Routes
- Requêtes HTTP
- Réponses HTTP
- DTO (Data Transfer Objects)
- Validation des données
- Pipes
- Gestion des exceptions
- Documentation avec OpenAPI (Swagger)
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- développer une API REST professionnelle ;
- valider les données d'entrée ;
- gérer les erreurs ;
documenter automatiquement une API.
-
Accès aux bases de données
Contenus
- Introduction aux ORM
- Prisma ORM
- PostgreSQL
- Modélisation des données
- Opérations CRUD
- Migrations
- Transactions
- Introduction à MongoDB
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- connecter une application à PostgreSQL ;
- réaliser des opérations CRUD ;
- gérer les migrations ;
comprendre les différences entre SQL et NoSQL
-
Authentification et sécurité
Contenus
- Sécurité des API
- JWT
- Authentification
- Autorisation
- Guards
- Passport
- OAuth2
- OpenID Connect
- OWASP Top 10
- Validation des entrées
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- sécuriser une API REST ;
- implémenter JWT ;
- protéger les ressources d'une application ;
- appliquer les bonnes pratiques de sécurité.
-
Développement avancé d'API
Contenus
- Pagination
- Filtrage
- Tri
- Recherche
- Upload de fichiers
- Gestion des fichiers
- GraphQL (introduction)
- WebSockets (introduction)
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- enrichir une API avec des fonctionnalités avancées ;
- développer des services plus performants ;
comprendre les principes de GraphQL et des communications temps réel
-
Tests et qualité logicielle
Contenus
- Tests unitaires
- Tests d'intégration
- Jest
- Mocking
- Couverture de code
- Débogage
- Qualité logicielle
- Documentation technique
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- développer des tests unitaires ;
- réaliser des tests d'intégration ;
- améliorer la qualité du code ;
produire une documentation technique
-
Conteneurisation et DevOps
Contenus
- Docker
- Docker Compose
- Variables d'environnement
- Git
- GitHub
- GitHub Actions
- CI/CD
- Gestion des versions
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- conteneuriser une application NestJS ;
- collaborer avec Git ;
automatiser les tests et le déploiement avec GitHub Actions
-
Cloud et observabilité
Contenus
- Déploiement sur Azure App Service
- Azure Container Apps
- Monitoring
- Logging
- OpenTelemetry (introduction)
- Application Insights (introduction)
- Variables de configuration
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- déployer une application dans le Cloud ;
- superviser une application en production ;
- analyser les journaux d'exécution ;
diagnostiquer les anomalies
-
Intelligence artificielle appliquée au développement Back-End
Contenus
- GitHub Copilot
- ChatGPT
- Microsoft Copilot
- OpenAI API
- Introduction à NestJS AI
- Génération automatique de documentation
- Génération de tests
- Intégration d'un assistant conversationnel
- Introduction au RAG
Objectifs pédagogiques
À la fin de cette semaine, l'étudiant sera capable de :
- utiliser des assistants IA pour accélérer le développement ;
- intégrer un modèle de langage dans une application NestJS ;
- produire automatiquement de la documentation et des tests ;
- développer une fonctionnalité intelligente basée sur un LLM.