2009-05-03 6 views
0

Exigences
projet devrait contenir 1 application principale et certaines applications sous secondaires (qui utilise les mêmes objets de domaine, a des services partagés, mais il a un peu un peu différent trop - non nécessaire pour l'application principale, donc - devrait être séparé). Il devrait exister un service de recherche partagé (probablement, dans différentes DLL) sur la plupart des objets du domaine, sinon tous, par des critères de recherche personnalisables et une logique partagée pour récupérer les valeurs possibles de ces critères (comme la sous-recherche des auteurs, pour récupérer un livre par lui).architecture du projet, en utilisant DDD

Problème
Est-ce que DDD correspond ici? Et si c'est le cas, à quoi devrait ressembler ma structure de projet? (meilleur format pour la réponse - liste des DLL structurées + quelques espaces de noms les plus significatifs).

Répondre

2

L'idée de classes de domaine globalement partagées semble contraire à DDD. Avez-vous lu le livre? Avec les classes de domaine partagées globalement, il reste peu de place pour les cartes contextuelles. Sans cartes contextuelles, vous aurez peu d'avantages à partir de DDD dans des applications autres que triviales.

+0

Si je vous ai bien compris, cela signifie que l'idée d'un service de recherche global est également contraire et que DDD ne correspond pas, n'est-ce pas? p.s. oui ... j'ai fait quelques lectures. Je suis juste sérieusement confus. –

+0

Il y a des services et il y a des services. Tout utilisateur d'un service doit être capable de s'adapter au contexte prévu de ce service afin de l'utiliser efficacement. Les cartes contextuelles sont vraiment des moyens de séparer les préoccupations dans différents contextes. Il peut y avoir des services qui sont exposés les parties externes et ne voient jamais les internes de vos cartes contextuelles. Certains services peuvent être utilisés entre les contextes de votre carte. Ce n'est donc pas un conseil unique sur la façon de concevoir des services. La question que vous devez vous poser est la suivante: dans quel contexte ce service sera-t-il utilisé? –

+0

Autant que je comprends - le moteur de recherche uni fait partie de l'infrastructure seulement. Cela ne concerne pas les entreprises. –