TDD & DDD from the Ground Up

TDD & DDD from the Ground Up

🎙 Christopher Simon 👥 1.1M 📅 17 avril 2026 ⏱ 46 min 👁 4K 📄 tutoriel 🧭 2026-08-02
Disponible en : Français (actuel) English

Mots-clés

Test-Driven DevelopmentDomain-Driven Designrefactoringagrégatslangage ubiquitaire

Résumé

Cette présentation de Christopher Simon, enregistrée à la conférence GOTO Copenhagen 2025, propose une démonstration en direct de l’application combinée de Test-Driven Development (TDD) et de Domain-Driven Design (DDD) pour développer un système d’inscription universitaire. L’orateur commence par un simple CRUD, puis introduit progressivement des règles métier plus complexes, comme la capacité limitée des salles, ce qui le conduit à refactoriser le code en utilisant des motifs tactiques de DDD (dépôts, agrégats, services de domaine). Il souligne l’importance du langage ubiquitaire et présente un outil open source, Contextive, pour gérer ce langage dans le code et la documentation. La démonstration est structurée en petites étapes, chaque test étant écrit avant l’implémentation, illustrant ainsi la boucle rouge-vert-refactor. L’accent est mis sur la maintenabilité et la capacité à faire évoluer le code face à des exigences changeantes. L’orateur partage également son expérience en tant que coach et consultant, et encourage les développeurs à adopter ces pratiques pour mieux connecter la technologie aux besoins métier. La session se termine par une introduction à l’Event Storming comme technique complémentaire pour explorer le domaine.

179 mots

Évaluation critique

La présentation de Christopher Simon est une démonstration pratique et pédagogique de l’application de TDD et DDD, qui se distingue par son approche progressive et ancrée dans un exemple concret. L’orateur, fort de son expérience de CTO et de coach, adopte une posture humble et pragmatique, reconnaissant que TDD n’est pas une solution universelle mais une technique parmi d’autres. La valeur principale réside dans la démonstration pas à pas : chaque étape est justifiée, les tests sont écrits avant l’implémentation, et les refactorings sont expliqués clairement. L’accent mis sur le langage ubiquitaire et la présentation de l’outil Contextive apportent une dimension originale et utile pour les équipes souhaitant aligner le vocabulaire métier et technique. La rigueur scientifique est satisfaisante dans le sens où la méthode est reproductible et le code est disponible sur GitHub, permettant aux spectateurs de vérifier chaque commit. Cependant, on peut regretter que la présentation ne discute pas des limites de TDD ou des contextes où DDD pourrait être contre-productif, ce qui aurait renforcé l’analyse critique. De plus, la partie sur l’Event Storming est très brève et aurait mérité plus de détails. L’adéquation entre le titre et le contenu est excellente : la vidéo tient ses promesses en montrant comment démarrer avec TDD et introduire DDD lorsque la complexité émerge. La qualité des sources est bonne, avec des références à des outils open source et des liens vers les profils de l’auteur. Enfin, la présentation est bien structurée et le rythme est adapté, même si l’orateur parle parfois rapidement. Dans l’ensemble, cette vidéo est une ressource précieuse pour les développeurs souhaitant améliorer leurs pratiques de conception logicielle, avec une note globale de 4 étoiles.

277 mots

Adéquation titre / contenu

Le titre reflète parfaitement le contenu : une démonstration pas à pas de l'application de TDD et DDD sur un cas concret.

Qualité & fiabilité

8/10

Démonstration pratique de TDD et DDD par un coach expérimenté, avec un dépôt de code public et des références à des outils concrets. L'approche est pragmatique et illustrée par des exemples réels, mais ne présente pas de validation scientifique formelle.

Chapitres

Sources citées

Sources concordantes

Références externes

Apport & nouveautés

Cette vidéo apporte une démonstration concrète et progressive de l’application de TDD et DDD, montrant comment passer d’un simple CRUD à une modélisation plus riche lorsque la complexité émerge. L’originalité réside dans l’accent mis sur le langage ubiquitaire et la présentation de l’outil Contextive, qui facilite son adoption. La méthode pas à pas, avec des tests écrits avant l’implémentation, illustre clairement les bénéfices de TDD pour la maintenabilité et l’évolution du code.

Pour aller plus loin :

  • Domain-Driven Design (Wikipedia) — Pour approfondir les concepts de DDD.
  • Test-Driven Development (Wikipedia) — Pour une vue d’ensemble de TDD.
  • Event Storming (Wikipedia) — Pour explorer cette technique de modélisation collaborative.

108 mots

Profil radar

Le profil radar montre des scores élevés en quantité et qualité d'information, ainsi qu'en fiabilité, indiquant une présentation dense et fiable. Le niveau technique est également bon, mais légèrement inférieur, reflétant une approche pédagogique accessible.

Fiabilité 8/10