2010-01-28 5 views
9

Notre équipe est relativement nouvelle à DDD et tente d'implémenter certains des concepts de notre projet actuel. Une question qui s'est posée est de savoir s'il faut mettre des méthodes dans des objets d'entité ou des objets de service.méthodes dans les entités DDD par rapport aux services

Certains membres de l'équipe estiment que les entités ne doivent contenir que des valeurs et que toutes les fonctionnalités doivent être contenues dans les services. D'autres pensent que cela rend les objets d'entité anémiques et qu'ils devraient contenir des fonctionnalités qui se rapportent à l'entité, tandis que les objets de service devraient être utilisés pour des fonctionnalités plus transversales. Nous nous demandons quel est le point de vue formel de DDD, ainsi que ce qui a fonctionné pour les gens dans la vie réelle.

Répondre

7

Il n'y a pas de point de vue formel pour DDD, mais l'objectif d'un modèle Domaim riche est d'éviter un Anemic Domain Model, donc refuser explicitement de mettre un comportement sur les objets du domaine va à l'encontre de l'esprit. Selon une école de pensée, les objets de domaine doivent être des objets POCO/POJO, ce qui signifie qu'ils ne doivent pas contenir de services abstraits en tant que membres. Cependant, cela ne signifie pas qu'ils ne peuvent pas avoir des méthodes qui interagissent avec de tels services.

Plus le comportement (pertinent) que vous pouvez donner à chaque objet de domaine est grand, mieux c'est.

Questions connexes