Mathieu Desnouveaux

Piochons dans les pratiques de DDD, programmation fonctionnelle & co. pour notre bien à tous

Présentation sur les pratiques DDD et programmation fonctionnelle pour bien choisir ses outils de développement au Forum PHP 2022

Sketchnote du Forum PHP 2022 illustrant la présentation 'Piochons dans les pratiques de DDD, programmation fonctionnelle & co. pour notre bien à tous' par Benjamin Rambaud. La schématisation visuelle présente 'Comment choisir le bon outil' avec une approche structurée : 1) Le contexte est important (quelle besoin? quelle techno? contient/compose l'équipe? complexité de temps?), 2) La complexité (essentielle vs obligatoire vs accidentelle), les ports (adapter, isoler le domaine, programmation fonctionnelle déterministe/immutable/isolation I/O), Domain Driven Design (modéliser le domaine, l'isoler, langage commun), et les conseils : ne pas oublier le contexte, rester simple, on peut s'isoler du framework.

Cette sketchnote a été réalisée lors du Forum PHP 2022. Elle illustre la présentation "Piochons dans les pratiques de DDD, programmation fonctionnelle & co. pour notre bien à tous" donnée par Benjamin Rambaud, qui aborde comment choisir les bons outils en s'inspirant de différentes pratiques de développement.

Contenu de la présentation

Benjamin Rambaud propose une approche structurée pour choisir les bons outils de développement. Il met l'accent sur l'importance du contexte : analyser les besoins, les technologies disponibles, la composition de l'équipe et la complexité temporelle. La présentation distingue trois types de complexité : essentielle (liée au métier), obligatoire (contraintes techniques) et accidentelle (à éviter).

L'approche combine plusieurs pratiques : les ports et adapters pour isoler le domaine, la programmation fonctionnelle pour plus de déterminisme et d'immutabilité, et le Domain Driven Design pour modéliser et isoler le domaine métier avec un langage commun.

Points clés à retenir

  • Le contexte avant tout : analyser besoins, technos, équipe et contraintes temporelles
  • Gérer la complexité : distinguer essentielle, obligatoire et accidentelle
  • Isolation du domaine : ports/adapters, DDD et programmation fonctionnelle
  • Rester pragmatique : garder la simplicité et s'isoler du framework sans dogmatisme
Thèmes:
🐘 PHP 🛠️ Tools
Événement:
🎤 Forum PHP

Source: Benjamin RAMBAUD
Carnet:
📚 Carnet 2022-2023

Cette sketchnote est disponible dans un carnet physique.

Publié le 14 octobre 2022