在一年半以前,我的每一行代码都由自己亲手编写。而今天,AI 负责了 80% 的初始代码实现,我则专注于架构设计、代码审查和同时推进多个开发线程。

本文并非又一篇鼓吹“AI 将颠覆一切”的文章,而是关于将 AI 融入生产开发流程的真实写照:哪些方法切实有效,哪些纯属浪费时间,以及为什么我将 AI 视为一个“不会吸取教训的初级开发者”——这正是我成功运用 AI 的心智模型。

我的四次编程范式转变

在我的职业生涯中,解决编程问题的方法经历了四次重大转变:

  1. 最初 5 年: 阅读书籍和 SDK 文档。
  2. 之后 12 年: 使用 Google 搜索社区提供的答案。
  3. 过去 18 个月: 使用 Cursor 进行 AI 辅助编码。
  4. 最近 6 周: 使用 Claude Code 进行全面的 AI 委托开发。

每一次转变的节奏都比上一次更快。切换到 Claude Code?我只用了几个小时就上手并开始高效产出。

AI 开发的真实工作流

抛开所有炒作,我当前的工作流是这样的:我主要将 AI 作为一个“思考伙伴”,与它合作,逐步打磨出最终进入生产环境的代码。

三步迭代法:接受不完美的第一版

忘记那些一键生成完美代码的幻想吧。作为工程师,你的职责是为问题找到最佳解决方案,而不仅仅是写一堆代码。我的实践证明,通常需要三次迭代。

第一步:95% 的代码都是垃圾

在这一阶段,AI 的主要作用是构建对你系统上下文的初步理解,同时帮助你识别出真正的挑战。生成的代码通常完全错误,但这没关系,关键是从中吸取教D训并反馈给 AI。

第二步:50% 的代码仍需返工

进入第二阶段,AI 开始理解需求的细微差别,你也已经明确了具体的实现路径。但即便如此,仍有一半的代码可能无法直接使用。

第三步:获得可用的初始代码

到这一步,AI 终于能生成一个我们可以迭代和优化的基础版本。你需要持续审查并修正它的方向。这只是你的起点,而非终点。

这个过程不是失败,而是迭代。期望 AI 第一次就给出完美的方案,就像期望一个初级开发者在毫无背景信息的情况下,独立完成一个复杂功能一样不切实际。

上下文难题及其解决方案

使用 AI 最大的挑战在于,它无法在两次独立的会话之间保留记忆。每次对话都像是一次冷启动。我的解决方案有两个:

1. 创建 Claude.md 上下文文件

为每个项目创建一个专属的上下文文件,其中包含:

  • 架构决策:系统设计的核心理念和约束。
  • 代码模式:项目中常见的编码规范和设计模式。
  • 注意事项:需要规避的“坑”和临时的解决方案。
  • 相关文档:指向关键内部文档的链接说明。

2. 集成外部工具

通过工具集成,我可以让 AI 连接到:

  • Linear:获取任务单的上下文。
  • Notion 或 Canvas:查阅项目文档。
  • 非生产数据库(只读权限):理解数据结构和数据。
  • 代码库:分析现有代码。
  • GitHub:从历史 Pull Request 中获取背景信息。

没有这些上下文,你就得一遍遍地重复解释相同的约束。有了它们,你的开发流程可以直接从第二步开始。

如何管理多个 AI “开发者”

我现在会同时运行多个 Claude 实例,感觉就像在管理一个每天早上都会失忆的小型开发团队。关键策略如下:

  • 不要在同一个问题上并行处理:这很容易导致思路混乱。
  • 用项目管理工具追踪一切:无论是 Linear 还是其他工具,确保每个任务都有记录。
  • 明确标记人类修改过的代码:AI 无法区分哪些是它写的,哪些是你改的,这会干扰后续的生成。

重塑代码审查流程

编写代码只是工作的一部分,代码审查同样重要。引入 AI 后,我的代码审查流程也演变成了三步。

第一步:AI 自我审查

让 Claude 首先审查自己生成的代码,它可以:

  • 发现缺失的测试用例。
  • 找出明显的 bug。
  • 提出改进建议。

这一步为我和同事节省了大量时间和来回沟通的成本。

第二步:我审查核心逻辑

作为工程师,我需要为最终上线的代码负责,无论它是否由 AI 生成。我重点关注:

  • 代码的可维护性
  • 架构的合理性
  • 业务逻辑的正确性
  • 集成的健壮性

第三步:团队常规审查

团队成员进行最终审查时,他们通常不知道哪些代码是 AI 生成的。我们对代码质量的要求始终如一。

一个重要的转变是:我现在对“我的代码”更加挑剔,因为其中很多并非我亲手敲下。没有了情感上的牵绊,审查也变得更加客观。

后台代理的早期探索

我们正在测试通过 Slack 触发的后台代理(使用 Cursor)来处理一些简单任务,例如:

  • 成功案例:两次成功修复了业务逻辑问题。
  • 失败案例:一次在处理 CSS 布局时失败。

目前的局限性在于,它无法访问私有 NPM 包,提交的代码没有签名,并且会绕过正常的追踪流程。但其潜力巨大:想象一下,当你休息时,AI 代理正在自动处理积压的简单任务。

真实的成本与回报

我的 Claude Code 使用成本约占公司付给我月薪的几个百分点,这笔投入不小。但作为回报:

  • 我的功能交付速度提升了 2-3 倍
  • 我能同时管理多个开发线程。
  • 我不再花费时间编写样板代码和重复性代码。

对于一位资深工程师来说,每月 1000-1500 美元的 AI 工具预算是合理的,其投资回报率显而易见。随着工程师对 AI 工具的熟练度提升,这笔开销也会变得更加高效。

常见陷阱与应对策略

AI 辅助开发并非一帆风顺,以下是我经常遇到的挑战:

  • 学习难题:AI 不会从错误中学习,你需要反复纠正同一个误解。
    • 对策:提供更详尽的文档和更明确的指令。
  • 过度自信难题:AI 会自信满满地生成有问题的代码,并声称其完美无缺。
    • 对策:永远保持验证,尤其是在处理复杂状态管理、性能敏感或安全相关的代码时。
  • 上下文窗口难题:大型代码库会超出 AI 的上下文窗口限制。
    • 对策:将大问题分解成小块,为每个小块提供精准的上下文。

心态转变:从关注代码到聚焦问题

最难的部分是放下对代码的“所有权”。我现在不再关心代码是不是“我的”,它只是需要被审查和优化的产出。这种抽离感反而是一种解放:

  • 能更快地删除糟糕的方案。
  • 代码审查更加客观。
  • 重构时不再有个人情感的阻碍。

如果明天出现更好的 AI 工具,我会毫不犹豫地切换。代码本身并不宝贵,我们解决的问题才是。

给技术负责人的几点建议

如果你是一位正在考虑引入 AI 的技术负责人,以下是我的建议:

  • 鼓励工程师尝试:让团队成员自由探索不同的 AI 解决方案,这是一项需要通过实践来掌握的技能。
  • 从重复性任务开始:这是 AI 最能立竿见影的领域。
  • 为实验提供预算:第一个月可能会比较混乱,要有心理准备。
  • 调整审查流程:AI 生成的代码需要不同的审查视角。
  • 文档化一切:优秀的上下文是提升效率的倍增器。

适应新 AI 工作流的工程师会发现自己多了一把锋利的工具。他们将成为“编排者”,在专注于架构、审查和复杂问题解决的同时,指挥多个 AI 代理协同工作。

给开发者的上手指南

想开始尝试吗?非常简单:

  1. 挑选一个定义清晰的小功能。
  2. 让 AI 尝试实现它三次。
  3. 像指导初级开发者一样审查它的产出。

就是这样。无需巨大的变革,也无需彻底改造流程。只需一个功能,三次尝试,一次坦诚的审查。

未来不是 AI 取代开发者,而是开发者利用最强大的工具,更快地创造出更优秀的解决方案。


👉 如果你需要 ChatGPT 代充 / Claude / Claude Code / 镜像 / 中转 API