La phase d’apprentissage des langages et des frameworks est un passage obligatoire. Mais la prise de recul et la capacité à analyser les problèmes et prendre les bonnes décisions techniques est ce qui distingue le « hackeur » de l’ingénieur.
Dans ce module, je présente l’importance pour les dévs (expérimentés ou non) d’analyser leur travail et leur décisions sous l’angle de l’efficience économique. Et je cherche à réduire l’effet Dunning-Kruger en présentant de nombreuses options techniques disponibles, et comment choisir parmi ces options.
De la qualité de code jusqu’au DDD, ce module met les apprenant·e·s en situation en mêlant cours théorique et un TP fil rouge pour appliquer leurs découvertes.
Contenu théorique
- Définition de l’architecture, et de l’importance que tout le monde soit concerné
- Introduction au Test Driven Development
- Bonnes pratiques de code et revue de code
- Choisir sa base de données
- Les Prérequis Non Fonctionnels (NFR: Non Functional Requirements)
- Les architectures applicatives : couches, hexagonales, CQRS…
- Notions d’intégration continue
- Architecture d’entreprise : monter une architecture microservice
- Le Domain Driven Design
Contenu pratique
- TP fil rouge : création d’une application de gestion de tournoi OU travail sur un projet personnel ou certifiant comportant des choix d’architecture majeurs.
- TP microservices : l’ensemble de la classe monte une architecture microservice autour de la logistique (par groupes) pour en découvrir les forces et les faiblesses.
Informations complémentaires
Volume horaire | 70h |
Cible | M1/M2 |
Langage de programmation | Indifférent |
Modules liés | Module englobant la formation Microservices Complété par Pilotage et Stratégie SI (haut niveau) et Méthodo de tests (Testabilité) |