标签:
????? 1,如果设计或者设计中的核心部分没有映射到领域模型,模型就没有什么价值,而软件是否正确也就令人怀疑。
????? 2,模型和设计功能之间的映射如果很复杂,就会很难理解 ,当设计变更了实际上模型是不可能维护的。
??????(分析产生的)领域模型和(对领域模型的)设计之间如果出现了致命的分歧,这 样一个活动( 分析或设计) 中产生的想法将无法对另外一个产生好的影响。
??????? 从模型中提取出在设计中使用的术语和所分配的职责之后,代码就成了模型的表达方式。
??????? 面向对象编程非常适宜用来实现模型,面向对象编程提供了对象的类、 类之间的关联关系、 对象实例、 以及对象实例之间的消息通
信 ,使得领域模型到设计对象的直接映射成为了可能。
??????? 有人说"象 C 语言这样的过程化语言也能够实现面向对象编程,对象可能会用数据结构来模拟"。?核心问题是:这种数据的意义仅仅存在于开发人员的脑海中,因为代码本身并不是那么明确, 很难实现领域和设计之间的简单良好的映射。 某些特殊的领域( 例如数学) 可以使用过程化编程来轻易地建模和实现,那是因为很多数学理论大多数都是关于计算的,可以简单地使用函数调用和数据结构来解决。 更 加复杂的领域并非仅仅是一组包含有计算的一套抽象的概念,无法被简化成一系列的算法 ,因此过程化语言不足以表达相应的模型。 因为这个原因,对于模型驱动设计而言,不推荐使用过程化编程。
?????? 为了实现领域模型到设计对象之间的良好映射,通常需要支持建模范型( 例如面向对象编程) 的软件开发工具和语言。
????? ---DDD Quikly?
标签:
原文地址:http://www.cnblogs.com/stst/p/4905538.html