从一个脚本到可维护系统:我最近重新理解的三个边界
代码变多并不可怕,真正昂贵的是边界模糊。这里记录三个最近反复验证的工程判断。
代码变多并不可怕,真正昂贵的是边界模糊。这里记录三个最近反复验证的工程判断。
写一个脚本时,我们只需要关心“它能不能跑”。系统开始被长期使用后,问题会迅速变成“它能不能被理解、被修改、被恢复”。
删除、覆盖、发布都应该发生在信息最充分的时候。数据库重建脚本需要明确确认目标库,资源删除前需要检查引用,发布则应当在内容与媒体通过校验后发生。
通用 CRUD 很方便,但“发布文章”“完成上传”不是普通的 update。它们包含校验、关系同步和状态变化,值得拥有明确的事务边界。
好的错误不是一句“失败了”,而是能告诉调用方下一步该做什么。冲突返回 409,输入错误返回 400,资源尚未就绪也不应该伪装成服务器故障。
简单不是文件少,而是每个概念都能在正确的位置被找到。
这也是这次重做 XDNOTE 时最重要的取舍:旧数据可以放弃,但新的结构必须能继续长大。