第IV部分有效应用程序的设计模式
第IV部分有效应用程序的设计模式
第23章:应用程序用户界面的架构设计
23.1设计考量
23.1.1 占有式UI与构成式UI的对比
自治性
授权性
23.1.2 HTML API与数据API的对比
23.1.3客户端与服务器端聚合/协作对比
23.2示例1:用于非分布式有界上下文的一个基于HTMLAF的、服务器端的UI
23.3示例2:用于分布式有界上下文的一个基于数据API的客户端UI
23.4要点
- 后端有界上下文的结构将极大影响用户界面,反之亦然。
- 决定哪个团队占有一个UI将显著影响该团队的活力以及工程解决方案。
- 可以在客户端上用JavaScript或者在服务器端使用你喜欢的技术从多个有界上下文中提取数据。
- 客户端构成可以降低复杂性以及一个额外服务器端组件的耦合。
- 服务器端聚合和编排免除了对JavaScript的依赖以及在浏览器中运行的性能约束。
- UI可以由HTML构成,或者它们可以从每个有界上下文中以JSON或XML格式提取数据。
- 使用HTML的构成为每个有界上下文提供了更多的控制,但分散了展现的关注点。
- 数据的聚合会将展现关注点隔离到单个Web应用程序,但从每个有界上下文中移除了展现关注点的占有关系。
第24章:CQRS:一种有界上下文的架构
CQRS(命令查询职责分离)是一种简单模式,可以将其应用到有界上下文。它会将领域
模型分离成两个模型:读取模型和写入模型(有时也称为事务模型)。
24.1为两个上下文维护单个模型的挑战
24.2用于复杂有界上下文的一种更好的架构
24.3 命令端:业务任务
24.3.1显式建模意图
24.3.2不受展现干扰所影响的模型
24.3.3处理业务请求