知识卡片

应用程序外观阻止表示层直接遍历领域模型的关系图

普通读书笔记卡 · 1806.c

内容

强大领域模型的常见陷阱是表示层为图方便直接沿对象关联遍历下去,导致表示层与领域模型内部结构死死绑定。团队用应用程序外观解决:外观只暴露领域模型的一部分给表示层,代劳完成遍历、生命周期管理、持久化;接口按”应由客户方决定接口”原则放在使用它的表格所在包,而非领域模型那边。

参考来源

- 位置:《架构之美》第4章《记忆留存》4.3.3节《UI和UI模型》"应用程序外观"(源文件:程序之美系列套装(6册)团队之美、项目管理之美、架构之美、数据之美、测试之美、安全之美/_epub-src/OEBPS/Text/part0130.xhtml) - 结论依据:原文明确"创建强大的领域模型容易犯一个典型的错误。表示层……常常与领域模型太过亲密。如果表示层遍历了领域模型中的关系,那么就很难改变领域模型了……应用程序外观只将领域模型的一部分暴露给表示层"。 - 原始内容:创建强大的领域模型容易犯一个典型的错误。表示层……常常与领域模型太过亲密。如果表示层遍历了领域模型中的关系,那么就很难改变领域模型了……应用程序外观只将领域模型的一部分暴露给表示层,表示层不会跟踪领域对象的关系图。