业务应用设计的约束与原则
1. 业务规则变更与时间控制
在业务应用中,可使用事件来表示规则变更。当应用实例化事件时,会将规则变更事件作为标记来调整其行为。把业务规则变更纳入事件日志,能丰富作为事实来源的事件日志。
这种想法的实现方式多样。事件可以非常具体,在实例化过程中调用特定代码;若规则经常调整(如短期促销活动),事件还可包含参数。
通过控制时间,我们能在应用中实现更丰富的功能,也能更深入地回答“发生了什么”和“为什么发生”,因为数据和规则都可供内省。
1.1 关键要点总结
- 跟踪数据随时间的变化。
- 明确事件和命令的定义。
- 区分事件发生时间和系统感知到事件发生的时间。
- 管理业务规则随时间的变化。
2. 设计约束
在设计业务应用时,有两个关于应用向用户界面(UI)呈现方式的约束:
- 支持UI以支持数据实时更新的方式构建。
- 使用GraphQL驱动UI体验。
2.1 从REST到图
可以将系统内的数据视为一个巨大的图。URL的分层路径部分曾用于对这个概念图进行索引,这是构建数据API的基础。例如, /api/v3/customers 端点会列出客户,要访问特定客户,可在路径后追加客户ID,如 /api/v3/customers/42 。客户可能有多个地址,可通过 /api/v3/customers/42/addresses 枚举,访问特定地址则
超级会员免费看
订阅专栏 解锁全文
5万+

被折叠的 条评论
为什么被折叠?



