用途:这是一条编码原则,适用于编写有状态逻辑,或代码分支过多、跨文件重复同一形状假设的场景。核心做法是把真实领域编码进数据结构,而不是散落在条件判断里。
主要能力与建议结构:用状态机替代零散布尔值、阶段或生命周期检查;用带类型的对象/模型替代松散参数或重复的形状假设;用映射、注册表、查找表或可辨识联合替代跨文件分支;用 reducer 或命令/事件模型替代临时状态修改;用围绕单一领域知识组织的模块替代 load、validate、transform、save 这类按执行顺序划分的模块(执行顺序不等于归属);用小的模块边界收拢重复行为、归属关系或不变量;在数据访问模式需要时使用队列、缓存、索引、图/树或规范化集合;也可采用其他合适的结构。若都不合适,先明确代码绝不能允许什么、数据如何被读取,再找恰好编码这些约束的结构。
限制与注意:不要强行抽象。若当前形状已清晰、局部且不太可能增长,优先选择朴素代码。对只增加间接层、却不消除分支、重复规则、非法状态或生命周期风险的抽象保持怀疑。跳过该原则的信号是:新功能让已有 if/else 链又多一个分支,或出现第二个必须与第一个保持同步的布尔值;按时间分解、以阶段命名的模块在各步骤重复同一领域规则,也是信号。资料未提供具体安装命令、代码示例或平台信息。