← 返回资讯
苏晴
资深编辑
已审核

我让AI重构2000行屎山代码,咖啡没泡好它干完了

上周二下午三点多,我在终端里敲了 `claude "帮我重构这个 2000 行的 Python 脚本"`,然后起身去厨房搞了杯手冲。咖啡还没滤完,回来一看,它已经搞完了——重构、单元测试、还顺手修了个隐藏了三个月的边界条件 bug。

我让AI重构2000行屎山代码,咖啡没泡好它干完了

我让AI重构2000行屎山代码,咖啡没泡好它干完了


上周二下午三点多,我在终端里敲了 claude "帮我重构这个 2000 行的 Python 脚本",然后起身去厨房搞了杯手冲。咖啡还没滤完,回来一看,它已经搞完了——重构、单元测试、还顺手修了个隐藏了三个月的边界条件 bug。

我端着杯子愣了几秒。

真变了。


先交代下:我用 Claude Code 大概三周,主要是日常搬砖用,偶尔周末拿它搭点 side project。不是什么"AI 取代程序员"的危言耸听,就是一个天天跟黑窗口打交道的人,对这种 agent 式编程的真实感受。


它到底是个啥

说白了,就是终端里的 AI 编程助手。没 UI,没侧边栏,就你熟悉的那个黑窗口,敲命令,它干活。

跟 Copilot 那种"你写着写着它帮你补下一行"的思路完全不同。Claude Code 是 agent 模式——你扔给它一个任务,它自己读文件、写代码、跑命令、看报错、改、再跑,循环到搞定。你就看着终端刷刷刷地输出,跟有个老练的同事在旁边 pair programming 似的。

我一开始挺怀疑的。之前用过几个 AI 编程工具,demo 看着贼炫,实际用起来连 import 路径都能搞错。但 Claude Code 第一个任务就把我震了。


案例一:七层 if-else 屎山

我手里有个祖传数据清洗脚本,1800 多行,核心逻辑嵌套了七层 if-else。每次改需求我都得先做心理建设,改完还得烧香。

在项目目录下敲了:

BASH
claude "重构 src/data_cleaner.py,把嵌套条件拆成策略模式,保持功能完全一致"

它先自己读了文件(终端里能看到它在跑 catgrep),然后咔咔开写。大概三分钟后停下来,跟我说:原始逻辑里有个分支永远不会被触发,因为上层条件已经覆盖了,问我要不要干掉。

我当时就傻了。这段死代码躺了两年,我每次看到都隐隐觉得不对,但从没认真验证过。它自己发现了,还附上了逻辑推导。

最终输出:策略模式拆成 7 个类,每个类不超过 40 行,带完整单元测试。我跑了一遍,全绿。又用生产数据跑了 diff,输出完全一致。

说实话,我自己手写这套重构大概要一整天。它用了五分钟。


案例二:翻车——它偷偷改了我的 webpack 配置

当然不是每次都这么顺。第二周我让它给一个 Next.js 项目加暗色模式。

任务本身很简单,就加个主题切换。它改完组件、加好 context provider 之后,我习惯性 git diff 看了一眼——卧槽,它把我 next.config.js 里一段自定义 webpack 配置给改了。

等等,这里我要更正一下——不是"改",是直接"优化"掉了。那段配置是我半年前为了兼容一个上古依赖库加的,注释里用大写英文写着 // DO NOT TOUCH - LEGACY DEPENDENCY。显然,Claude Code 不理解人类这种绝望的求生信号。

结果那个老依赖直接炸了,页面白屏。我花了一个多小时排查,最后 git bisect 才定位到是它这个改动。

教训:让它干活之前,一定先 git commit。它的"主动性"是双刃剑——能帮你发现隐藏 bug,也能在你不知情的情况下搞一些"它觉得对"的事。现在养成习惯了,每次让它干大事之前先提交,干完仔细 review diff。不提交就让它干活,等于把车钥匙给陌生人。


案例三:跨文件连锁改动

第三个场景让我真觉得这种 agent 模式有点东西。

我让它"把所有 API 路由的错误处理统一成新的 ErrorResponse 格式"。涉及 14 个路由文件,每个文件的错误处理写法还不太一样。

传统做法是我一个个文件打开改,边改边骂当初为什么不统一。或者写个脚本批量处理,但正则很难覆盖所有变体——有的用 res.status(500).json(),有的用 throw new Error(),有的自己封装了个错误处理函数,五花八门。

Claude Code 的做法:先 grep 出所有相关文件,逐个读,识别不同的错误处理模式,然后针对每种模式写替换逻辑,逐一改过去。改完自己跑了一遍 lint 和 type check。

有个文件里混了 GraphQL 和 REST 的错误处理,它居然识别出来了,只改了 REST 部分,GraphQL 的保持原样。这种上下文理解程度,我觉得比我预期的好不少。当然也可能是我预期太低了,毕竟之前被各种 AI 工具毒打过。


无界面的好与坏

好处很明显:快,轻,完全融入工作流。不用切浏览器、不用摸鼠标,就在终端里说完需求,切到别的窗口继续干活。它跑完了叫我一声。这种体验跟 IDE 插件完全不一样——它不打扰你,你不需要盯着它一行行写代码。

而且因为它是 agent 模式,会自己跑命令看结果。写完代码自己跑测试,测试挂了看报错、定位、修正、再跑。这个"自己检查自己"的闭环,让最终输出质量高了一大截。据我了解,它底层用的是 Claude 4 Sonnet(2025 年 5 月那个版本),代码能力确实比之前的版本强不少。

坏处也有:没有 diff 预览,至少目前版本没有。你只能事后 git diff 看它改了什么。有时候它一口气改太多文件,review 起来也挺累的。还有就是前面说的,偶尔会过度自信做一些不必要的改动。嗯...这个怎么说呢,有点像带了个技术很强但不太懂人情世故的 junior,得盯着点。


跟 Cursor / Copilot 的体验差异

三个我都用过,简单说下感受:

我现在是组合用:日常写代码开着 Copilot 补全,需要大范围改动或探索性任务时切到 Claude Code。两者不冲突,各有所长。大概就是"加速器"和"副驾驶"的区别。


什么人适合用

如果你符合下面几条,大概率会喜欢:

如果你是刚入门的新手,可能 Cursor 那种带 UI 的交互方式更友好。毕竟 Claude Code 目前还是个命令行工具,有一定的使用门槛。而且说实话,如果你不太习惯看 diff、不太清楚它改了什么,可能会踩坑。


最后说两句

三周下来,Claude Code 已经进了我工具箱前三。它不是魔法,有时候会犯蠢,有时候会"过度优化",但它在理解任务意图自主闭环执行这两件事上的表现,让我愿意忍受那些小毛病。

AI 编程工具这一年进化太快了。从 2024 年初的代码补全,到年中 Cursor 那种对话式辅助,再到现在这种 agent 式执行——每次迭代都在重新定义"程序员的工作流"。2025 年 Anthropic 和 OpenAI 在这块的竞争也白热化了,对我们来说倒是好事。

我现在的感觉是:那些重复性的、机械的、不需要太多判断的编码工作,以后大概率会越来越依赖这类工具。但理解业务、做架构决策、review AI 产出的代码——这些事情反而变得更重要了。

真要说有什么遗憾的话,大概就是它还不能帮我写周报吧。


你试过 Claude Code 或者类似的 agent 编程工具吗?体验怎么样?有没有踩过什么有意思的坑?评论区聊聊,我泡好咖啡等着看。☕

#claudecode #ai编程 #开发工具 #效率提升 #程序员日常

39
990 阅读
4 评论
分享
链接已复制
编辑说明

本文由 MakeSense 编辑团队撰写并审核。文中引用的数据和观点均经过交叉验证,如有疏漏欢迎在评论区指正。最后更新:2026年06月27日 18:37

苏晴

资深编辑

科技媒体从业 8 年,曾就职于多家科技媒体。关注 AI 创业和投资赛道,采访过 50+ 位行业从业者。

读者评论 4

张工 1周前
写得很实在,特别是实测对比那部分,跟我自己的使用感受一致。
回复 点赞 (12)
前端工程师 1周前
代码示例很清晰,直接用到项目里了。
回复 点赞 (6)
技术小白 昨天
作为非技术人员也看懂了,感谢作者的通俗讲解。
回复 点赞 (3)
Dev小王 4天前
终于有人把这个说清楚了,收藏了。
回复 点赞 (8)