当前位置:  开发笔记 > 编程语言 > 正文

我在哪里可以找到一些DDD的好例子?

如何解决《我在哪里可以找到一些DDD的好例子?》经验,为你挑选了7个好方法。

我正在学习领域驱动设计,但是有些实际问题令我感到困惑,我认为看到一些好的样本可能会被清除.

有没有人知道一些很好的工作代码示例,它们可以很好地建模基本的DDD概念?

特别感兴趣

说明性域模型

使用域/应用程序服务

价值对象

聚合根

Michael Hart.. 193

DDD样本的难点在于它们通常非常特定于域,并且所得系统的技术实现并不总是显示在域建模中所做的设计决策和转换,这实际上是DDD的核心.DDD更多地是关于流程而不是代码.(正如一些人所说,最好的DDD样本就是书本身!)

也就是说,一个评论良好的示例应用程序至少应该揭示其中的一些决策,并为您提供一些方向,使您的域模型与用于实现它的技术模式相匹配.

你没有指定你正在使用哪种语言,但我会用几种不同的语言给你一些:

DDDSample - 一个Java样本,反映了Eric Evans在他的书中谈到的例子.这已得到很好的评论,并显示了使用单独的有界上下文(即表示层)解决各种问题的许多不同方法.它正在积极开展工作,因此请定期检查更新.

dddps - Tim McCarthy的样本C#app,用于他的书,.NET域驱动设计与C#

S#arp架构 - 一个实用的C#示例,而不是"纯粹"的DDD方法,可能是因为它缺乏真正的域问题,但仍然是一个很好的干净方法.

对于所有这些示例应用程序,最好从SVN中查看最新的主干版本,以及真正了解思维和技术模式,因为它们应该定期更新.



1> Michael Hart..:

DDD样本的难点在于它们通常非常特定于域,并且所得系统的技术实现并不总是显示在域建模中所做的设计决策和转换,这实际上是DDD的核心.DDD更多地是关于流程而不是代码.(正如一些人所说,最好的DDD样本就是书本身!)

也就是说,一个评论良好的示例应用程序至少应该揭示其中的一些决策,并为您提供一些方向,使您的域模型与用于实现它的技术模式相匹配.

你没有指定你正在使用哪种语言,但我会用几种不同的语言给你一些:

DDDSample - 一个Java样本,反映了Eric Evans在他的书中谈到的例子.这已得到很好的评论,并显示了使用单独的有界上下文(即表示层)解决各种问题的许多不同方法.它正在积极开展工作,因此请定期检查更新.

dddps - Tim McCarthy的样本C#app,用于他的书,.NET域驱动设计与C#

S#arp架构 - 一个实用的C#示例,而不是"纯粹"的DDD方法,可能是因为它缺乏真正的域问题,但仍然是一个很好的干净方法.

对于所有这些示例应用程序,最好从SVN中查看最新的主干版本,以及真正了解思维和技术模式,因为它们应该定期更新.


正如在原始问题评论中提到的@Mehdi,你应该添加Vaughn Vernon的精彩例子.到目前为止,这是我见过的DDD模式的最佳实现:github.com/VaughnVernon/IDDD_Samples

2> Todd Smith..:

不是源项目,但我偶然发现了Parleys.com,它有一些很好的视频,可以很好地覆盖DDD(需要闪存):

使用丰富的域模型改进应用程序设计

获得适合域驱动设计的价值对象

我发现这些比目前可用的几乎不存在的DDD示例更有帮助.


链接更新:"使用丰富的域模型改进应用程序设计"http://www.parleys.com/#sl=1&st=5&id=148和"为域驱动设计获取正确的值对象"http://parleys.com/ #SL = 1&ST = 5&ID = 172
即使这些以上评论的链接也无效.!!!
哟,链接不起作用...

3> Gutek..:

来自Eric Evans的Domain-Driven Design Book的.NET DDD示例可以在这里找到:http://dddsamplenet.codeplex.com

干杯,

雅各布



4> 小智..:

查看Project Silk.它不仅展示了DDD,还展示了其他前沿模式.这是任何Web开发人员的优秀资源.可以在MSDN上找到该项目的完整概述.



5> Thurein..:

这是一个基于域驱动设计的好例子,并解释了为什么拥有单独的域层很重要.
微软西班牙 - DDD N层架构



6> 小智..:

ddd-cqrs-sample也是一个很好的资源.用Java,Spring和JPA编写.



7> Peter Tate..:

Code Camp Server,Jeffrey Palermo的《ASP.NET MVC in Action》一书的示例代码。在本书着重于表示层的同时,使用DDD对应用程序进行建模。

推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有