KDB视图是否应包含副作用?官方文档表述冲突求解
KDB视图与SAM模型中副作用的规范说明
- 基础视图规范:常规KDB视图的设计原则是无副作用,目的是保证视图作为查询逻辑的封装,只做数据计算、筛选等纯操作,不修改外部状态、不执行IO类操作,确保逻辑纯净、可复用、易维护。
- SAM模型的特殊要求:SAM是特定架构模式,它要求把所有副作用(比如数据写入、外部服务调用)集中放在视图层,这是为了遵循该架构的职责划分——内核层专注状态与核心业务逻辑,视图层统一处理对外交互的副作用,让整体架构的职责边界更清晰。
这两处表述并不冲突,前者是通用KDB视图的设计准则,后者是SAM架构下的特殊约定,只需根据自身使用的场景遵循对应规范即可。
内容的提问来源于stack exchange,提问作者Chechy Levas
相关产品推荐
相关产品推荐

