In un'applicazione MVC, come viene implementato DDD. Quali sono gli oggetti del dominio? Se eseguo il mapping delle entità agli oggetti personalizzati, dove si posiziona questa logica di mappatura, nei metodi dei repository o nel livello di servizio?Pattern MVC + pattern DDD
risposta
Ci sarà un gruppo di apprendimento evoluto per rispondere a tutte queste domande.
Vorrei iniziare con il ASP.NET MVC Storefront Starter Kit utilizza TDD e non DDD ma è un buon punto di partenza. Se sei veramente interessato a DDD ti suggerirei di leggere Eric Evans Book, è considerato la bibbia DDD di più. Ayende Rahien ha anche scritto un libro chiamato Building Domain Specific Languages con BOO che potrebbe anche dare qualche informazione su DDD.
Cosa intendi per TDD vs DDD? Non sono cose opposte. Ma forse ti ho capito male. –
Stavo solo cercando di comunicare che la serie StoreFront fornirà molti dei modelli, ma per la maggior parte è stata realizzata utilizzando TDD. – cgreeno
Ho fatto una modifica - Non stavo cercando di confrontare le 2 idee diverse da una prospettiva di design molto ampia – cgreeno
C'è una grande nuova serie di post in corso su http://nathan.whiteboard-it.com/archive/2009/03/01/asp.net-mvc-domain-driven-design.aspx che in realtà sta descrivendo fin dall'inizio come progettare un'applicazione con DDD in mente.
Dai uno sguardo allo S#arpArchitecture. È un ottimo modo per iniziare con MVC e DDD allo stesso tempo. Gli oggetti di dominio (Modelli) sono memorizzati in diversi progetti dai Controller e dalla presentazione. Ha un modello di installazione e soluzione piuttosto dolce e una grande documentazione.
Fa buon uso del pattern di repository che fa parte del nucleo di DDD. Impiega anche diverse "migliori pratiche" moderne.
In un'applicazione MVC tutta la logica specifica del dominio deve essere inserita nella M di MVC, il modello.
Domain Driven Design – cgreeno
DDD non è il modello ma un modo di pensare. Leggi il libro di Eric Evans. – Paco