1. 2

Vous êtes-vous déjà retrouvé face à un controller Symfony surchargé qui gère à la fois la validation, la logique métier, la persistence et les réponses HTTP ? Si oui, le CQRS est fait pour vous !

Le CQRS (Command Query Responsibility Segregation) est un pattern architectural qui sépare clairement les opérations d’écriture (Commands) et de lecture (Queries). Combiné avec Symfony Messenger, il vous permet de :

  • Organiser votre code de manière claire et maintenable
  • Séparer les responsabilités pour respecter les principes SOLID
  • Valider vos données avant même qu’elles n’atteignent votre logique métier
  • Gérer les transactions de base de données de manière élégante
  • Préparer votre application pour l’asynchrone sans effort

Dans cet article, nous allons explorer les Commands (écriture) et les Queries (lecture) à travers un exemple concret de gestion de bibliothèque.

  1.