Domain driven design 域驱动设计与仅仅使用规范有什么不同?

Domain driven design 域驱动设计与仅仅使用规范有什么不同?,domain-driven-design,specifications,Domain Driven Design,Specifications,我读到领域驱动设计是关于专注于问题领域,而不是专注于软件。他们说,解决问题域的复杂性比解决软件的复杂性更容易,因为解决了问题域后,您也更了解如何构建软件。他们还说,实际上这个领域比软件的结构更复杂,或者如果你从树林里看不到森林,你就有麻烦了 但是域驱动设计与仅仅使用软件规范有什么不同呢?我的意思是,当然我们应该在开始编码之前了解问题域。DDD是否正在重塑方向盘?领域驱动设计更多的是建立一个通用的世界模型(以及相关的通用语言),您和领域专家都可以使用 从理论上讲,这意味着开发人员可以编写类似于问题

我读到领域驱动设计是关于专注于问题领域,而不是专注于软件。他们说,解决问题域的复杂性比解决软件的复杂性更容易,因为解决了问题域后,您也更了解如何构建软件。他们还说,实际上这个领域比软件的结构更复杂,或者如果你从树林里看不到森林,你就有麻烦了


但是域驱动设计与仅仅使用软件规范有什么不同呢?我的意思是,当然我们应该在开始编码之前了解问题域。DDD是否正在重塑方向盘?

领域驱动设计更多的是建立一个通用的世界模型(以及相关的通用语言),您和领域专家都可以使用

从理论上讲,这意味着开发人员可以编写类似于问题领域描述的代码,领域专家可以查看开发人员的肩膀,了解发生了什么

规范并没有对世界的通用语言或模型做出这样的承诺,它只是说“我们将构建特定的东西”。您提出的高度指定的类模型可能会起作用,但它可能无法很好地反映“现实”

有一本关于域驱动设计的免费好书(不幸的是需要登录)