Pergunta

Eu estou tentando entender os conceitos por trás DDD, mas acho que é difícil de entender apenas lendo livros como eles tendem a discutir o tema de uma maneira um tanto abstrata. Eu gostaria de ver alguns bons implementações de DDD em código, de preferência em C #.

Existem bons exemplos de projectos que praticam DDD no mundo open source?

Foi útil?

Solução

Eric Evans e uma empresa de consultoria sueca lançaram um aplicativo de exemplo baseado no exemplo de transporte que Eric usos ao longo do livro. É em Java, mas os conceitos são bem documentados na página do projeto.

http://dddsample.sourceforge.net/

No entanto, alertou que DDD é mais sobre a viagem que o destino. Entenda que o código de exemplo que você está procurando assumiu muitas formas antes de se tornar o que você vê agora. Você não viu os modelos desajeitados que foram usados ??inicialmente e você está perdendo as medidas tomadas para refatorar o modelo baseado no conhecimento adquirido ao longo do caminho. Enquanto os blocos de construção são importantes na DDD, Eric belives eles estão mais enfatizado, por isso tome todas as amostras com um grão de sal.

Outras dicas

Eu não tenho certeza de como completa que é, mas eu achei o NDDD Amostra no Google Code.

Estou surpreso ninguém mencionou Macto , amostra DDD do Ayende. A coisa mais importante sobre Macto é que o processo buraco pensar antes de o real codificação é apresentada em um href="http://ayende.com/blog/tags/macto" série de mensagens . DDD não é sobre a implementação de um modelo, é sobre a modelagem de um domínio do negócio. Decisões como "um conceito é um objeto agregado Root / Entidade / Value" são muito mais importante do que como será um AR ser persistentes.

Também eu recomendaria vídeos de Udi Dahan sobre SOA e CQRS que poderia proporcionar um melhor contexto no qual aplicar DDD.

Este não é um projeto open source, mas ainda é um exemplo de código: http: // www. codeplex.com/dddpds

O exemplo é usado no livro .NET Domínio-Driven Design with C #: Problema-Design-Solution


Um exemplo que parece promissor, mas poderia ter morrido fez-up: http://www.codeplex.com/domaindrivendesign

Eu tenho medo que http://www.codeplex.com/domaindrivendesign de fato, morreu , mas se alguém estiver interessado em contribuir hesite em contactar-me.

Em geral, eu recomendo contra confiando demais em exemplos de DDD, em melhores exemplos pode mostrar os resultados da modelagem de domínio e / ou uma abordagem para implementação dos padrões. Eu, portanto, recomendo a leitura do livro e, em seguida, fazer perguntas no fórum .

http://kigg.codeplex.com/ é um bom exemplo para mim.

Eu sei que não é C #, mas este é um java meta-quadro que se segue uma abordagem orientada domínio: Eu não sei muito sobre isso, mas eu estou disposto a estudá-lo em um futuro próximo: Roma Framework

Uma boa leitura é Jimmi Nilssons livro (e blog para que o assunto) Aplicando Domain Driven Design

É uma mistura de Evans e Fowlers livros ( Domínio-Driven Projeto - Evans), e ( Patterns of Enterprise Application Architecture - Fowler)

Eu não usei qualquer mim mesmo, mas existem algumas ferramentas mencionadas na página DDD Wikipedia. A maioria deles parecem ser implementado em Java embora.

http://en.wikipedia.org/wiki/Domain-driven_design # Software_tools_to_support_domain-driven_design

Ok, eu encontrei este, mas não é Java C #:
http://timeandmoney.domainlanguage.com/

Code Camp Servidor , código de exemplo de Jeffrey Palermo para o livro ASP.NET MVC em Ação é de código aberto e usa DDD.

(o mesmo amostras de design como a minha resposta em Boa Domain Driven )

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top