上周五,我接到了一个需求:给供应链系统加一个实时库存预警模块。传统做法大概是和产品对需求两天、写设计文档一天、开发三天、调试一天——一周没了。这次我用 Claude Code 试试,结果只用了一天半。这不是在说 AI 多神奇,而是想真实还原一下:AI 编程工具到底怎么用、哪里省时间、哪里反而更费时间。
从「翻译需求」开始
接到需求后,我没有直接动手写代码。我先把和产品经理的对话整理成了一份结构化文档:功能范围、触发条件、告警阈值逻辑、数据来源、异常处理规则。相当于把模糊的产品语言「翻译」成技术规格书。这一步以前我也做,但经常是边写代码边补文档,改来改去很碎。这次专门花半小时写清楚再动手,反而后面少返工。然后我把这份文档直接丢给 Claude Code,让它先理解:我需要做一个库存预警模块,请根据以下需求生成技术方案:
核心代码生成阶段,我把生成的方案拆成三个任务:数据层:库存查询 + 安全库存比对逻辑触发层:定时任务 + 阈值判断通知层:消息推送 + 邮件模板每个任务单独丢给 Claude Code,让它写具体实现。举个例子,数据层我只要了一段描述:帮我写一个库存预警的计算逻辑:
输入:当前库存量、安全库存值、消耗速率
输出:预警等级(正常/警告/严重)和建议补货量
要求:支持批量计算,有日志输出
它给出了完整实现,包含边界处理、异常捕获、单元测试示例。我做的动作是:读一遍代码,标注「这行需要确认」和「直接过」两类,效率比自己手写快很多。以前写代码的状态是:打开 IDE,手指悬在键盘上,想着「这行应该怎么写」。现在变成:看 AI 写的代码,判断对不对。这是一种很微妙的心态转变——从「输出者」变成「审核者」。
调试环节:意外地省时间
调试我本来以为会翻车,结果反而是最省时间的部分。Claude Code 能直接理解报错信息。我把一段报错日志扔给它:sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) connection refused它不仅给出了可能的原因,还给出了排查步骤和修复代码。我顺着排查,发现是连接池配置的问题,改了一个参数就好了。更关键的是,当我想加一个新需求——「历史预警记录查询」——之前写的代码模块化程度高,直接复用,改动很小。这验证了一个经验:前期和 AI 一起把结构定清楚,后期扩展会轻松很多。