SuperAPI AI 工具集

principle-model-the-domain

通用与其它

查看项目

更新于 10-16 02:29

技能介绍

用途:这是一条编码原则,主张用数据结构表达真实领域,而不是把领域规则散落在条件判断中。与领域匹配的结构能让非法状态无法表示,并删除分支。写入时选好结构成本低,事后补救则像重构,容易被推迟。

主要能力(建议采用的结构):用状态机替代散落的布尔值、阶段或生命周期检查;用带类型的模型替代松散参数或重复的形状假设;用映射、注册表、查找表或可辨识联合替代跨文件的分支;用 reducer 或命令/事件模型替代临时状态修改;用围绕单一领域知识组织的模块替代“加载、校验、转换、保存”这类按执行顺序切分的模块,因为执行顺序不等于归属;用小的模块边界收拢重复行为、归属关系或不变量;在访问模式需要时使用队列、缓存、索引、图、树或规范化集合;以及其他合适的结构。若都不合适,先弄清代码绝不能允许什么、数据如何被读取,再找恰好编码这些约束的结构。

使用方式:在编写有状态逻辑时应用;当代码分支很多,或同一形状假设在多个文件中重复出现时应用。

限制与注意:不要强行抽象。如果当前形状已经清晰、局部且不太可能增长,优先选择平淡的代码。对只增加间接层、却不减少分支、重复规则、非法状态或生命周期风险的抽象保持怀疑。

跳过该原则的信号:新功能只是给已有 if/else 链再加一个分支,或新增第二个必须与第一个保持同步的布尔值;按时间顺序分解模块也是信号,以阶段命名的模块会在各步骤中重复同一领域规则。

其他信息:该技能的具体安装命令、平台支持与收费情况暂未提供。