Construire une architecture Domain-Driven Design avec BowPHP
BowPHP fournit une organisation MVC propre, mais rien ne vous empêche de structurer une application plus vaste autour du Domain-Driven Design (DDD) (conception pilotée par le domaine). Le framework vous offre déjà les trois pièces sur lesquelles le DDD s'appuie : un conteneur pour lier les interfaces à leurs implémentations, le CQRS pour modéliser les cas d'usage, et un système d'événements pour publier les événements de domaine. Dans ce billet, nous allons les assembler en une architecture en couches et testable.
Nous allons modéliser un seul contexte délimité — Ordering — en gardant le domaine au centre et les détails du framework en périphérie.