use*_*664 8 oop domain-driven-design domain-model conceptual-model
我对一些令我困惑多年的术语有疑问,我似乎无法弄明白.维基百科倾向于非常正式地解释这些事情,这对我来说很难理解......
我一直在努力理解的术语是:问题域,概念模型,领域模型,业务模型,业务领域,业务逻辑,领域逻辑等等.他们中的一些意思是一样的,有的则是交替使用,一些它们在不同的环境中意味着不同的东西.我要求的是高级概述,所以我不会对这些术语感到困惑......
这些术语是否都是域驱动设计的一部分?OO说话吗?我应该在什么情况下放置它们?
这是我到目前为止所理解的:
我在ER建模方面有一些经验,我从维基百科了解到,ER模型是用于表示概念模型(领域模型)的众多技术之一.
我可能完全错了,但它应该告诉你我的困惑在哪里......
我怀疑这些术语有一个全面的,正式的定义,但根据我的经验,以下是普遍接受的定义:
域名是一个受关注的领域,或者正如您所说,主题.如果关注的领域是企业,那么这将是一个业务领域.问题域一词更为通用.
概念模型是域中概念和关系的抽象:我同意域模型和概念模型这两个术语在很大程度上是可以互换的.唯一的区别是术语概念模型强调这是概念的模型,而不是反映软件设计.
术语业务逻辑和域逻辑倾向于引用定义域内实体的正确行为的规则.可以在域模型中捕获这些规则中的一些,例如通过关系约束或使用状态图表.您是否认为域逻辑是域模型的必要部分可能取决于您的建模需要的形式以及相关域.