相关讨论:
ES与领域模型的关系
Node.js的DDD+ES案例
[该贴被banq于2012-09-19 09:38修改过]
相关讨论:
ES与领域模型的关系
Node.js的DDD+ES案例
[该贴被banq于2012-09-19 09:38修改过]
这点不敢苟同,DCI中的context是一种用例场景,一般对应一个user case.但是ddd中的bounded context则不是用例场景,也不对应一个用例,bounded context是一个上下文边界。通常理解,一个上下文边界内会有一些场景。
请指正我的理解是否正确。
我认为我的统一语言:场景 事件和状态中,场景概念等同于这些,是为了帮助大家更好地理解我的场景概念,但是也不等同于它们,这种差别体现了我的落地概念。
无论DCI场景还是DDD上下文哪个大些,在实际落地时,我愿意将它们裁剪得一样大小,这样才能统一语言啊。
[该贴被banq于2012-09-19 15:00修改过]
按照eric 的理解,bounded context应该是一种边界思维吧,描述一个范围。bounded context在系统层面和系统模块类似的,一个系统模块中当然会有多种场景了。
那是Eric理解,Eric只是提出统一语言概念,但是他提出的实体 值对象不一定是统一语言的全部啊,只是他提出统一语言这个点子建议是大家认同的,至于统一语言到底是什么样语言,存在各种流派。
我的场景 事件和状态只是一种统一语言实现,而我认为可以涵括DCI和DDD以及Domain Events等三个概念,当然,整合后的概念和它们原始概念又有些区别。
谈到边界思维,我更愿意推崇老子思想的有欲观其缴的边界观点,边界是一个内外分界点,如同正局长是一个单位边界聚合根,是上级部门和局单位内部联系的中间点...。
我很赞同,现有的ORM或多或少的都会破坏领域架构,比如要求实体继承基类,要求实体编写Attribute注释,要求实现ORM自身架构而创建大量与DDD无关的类。
理想中的ORM应该是这样的:领域模型即使脱离ORM也能正常运转,按照这个想法,我创建了一个小小的项目:
http://kylinorm.codeplex.com/
|
Attribute还是小意思,只是模型不干净而已,我说的“领域模型ER化”指的是某些时侯,领域对象关系本身比较复杂,其存储结构很难用一个二维的数据表去表达,在这种情况下,为了数据的持久化,不得不调整领域对象关系适应其二维的存储结构。