2

您的数据模型与您的 UI 和域模型的映射有多接近?

如果数据模型具有例如 Customer 表、Employee 表等,则它可以非常接近域模型。

UI 可能不会如此紧密地反映数据模型 - 例如,可能有多种形式,所有形式都输入客户数据的零碎以及其他杂项数据。在这种情况下,您可以有单独的表来保存来自每个表单的数据。然后可以根据需要在将来组合数据...或者,可以将表单数据直接插入到客户表中,这样数据模型就不能很好地与 UI 相关联。

什么已被证明对您更有效?

4

3 回答 3

4

我发现将您的域模型映射到您要解决的现实世界问题更清晰。

然后,您可以创建视图模型,作为视图所需的所有数据的存储桶。

如前所述,您的 UI 可以经常更改,但这通常不会改变您正在处理的特定域问题......

可以在此处找到有关此模式的信息:

http://blogs.msdn.com/dphill/archive/2009/01/31/the-viewmodel-pattern.aspx

于 2009-10-05T08:16:40.240 回答
0

UI 可以根据许多需求进行更改,因此通常最好将数据保存在域模型中,从任何一个 UI 中抽象出来。

于 2009-10-05T08:08:03.210 回答
0

如果我有一个 RESTful 服务层,那么他们公开的领域模型是什么。在这种情况下,UI(任何特定屏幕)调用许多这些服务,并从收集的域模型中组成屏幕。在这种情况下,尽管域模型一直冒泡到 UI,但 UI 层会略过必要的数据来构建其特定的屏幕。还有一些关于使用域模型(注释)进行持久性的有趣问题。我的观点是域模型可以是单一的事实来源。它可以很好地完成承载数据、封装逻辑的工作。我从事的项目有很多样板代码将每个域模型转换为 DTO、VO、DO 和你有的东西。在大多数情况下,其中很多看起来都是不必要的,更多的是由于习惯。

于 2012-06-01T12:48:11.313 回答