Claude Code | | 约 8 分钟 | 2,995 字

Claude Code 使用技巧:规划与执行分离

将 AI 编程任务分为「规划阶段」和「执行阶段」,可以显著提高代码质量和开发效率。本文介绍这一工作模式的核心思想和具体实践方法

最近在 Hacker News 上有一篇关于 Claude Code 使用技巧的文章获得了 976 个点赞,主题是「规划与执行分离」(Separation of Planning and Execution)。这个看似简单的理念,实际上深刻改变了我们与 AI 协作编程的方式。

什么是「规划与执行分离」?

传统的 AI 编程模式是:给一个指令,AI 直接执行。这种模式的问题在于:

  • AI 可能会走弯路,浪费大量时间
  • 缺乏全局视角,代码架构可能不合理
  • 难以发现需求中的模糊点或潜在问题

规划与执行分离的核心思想是:在让 AI 执行代码任务之前,先让它分析和规划。具体做法是:

  1. 规划阶段:描述需求,让 AI 分析问题、设计方案、列出步骤
  2. 确认阶段:人类审核方案,提出修改意见
  3. 执行阶段:AI 按照确认的方案执行代码

为什么要分离?

1. AI 更擅长分析,而非执行

Claude Code 在分析问题、发现潜在风险、设计代码结构方面表现出色。但在执行阶段一次性完成所有代码,容易出错且难以调整。

2. 人类需要「签字确认」

代码是数字资产,需要谨慎对待。让 AI 先给出方案,人类确认后再执行,确保:

  • 需求理解正确
  • 技术方案合理
  • 没有遗漏边界情况

3. 减少返工,提高效率

规划阶段的成本远低于执行阶段。如果方案有问题,在规划阶段调整比在代码写完后再重构要高效得多。

具体实践方法

方法一:先分析,再实现

用户:
我想给博客添加一个点赞功能,需要考虑:
1. 前端显示点赞按钮和计数
2. 后端 API 存储点赞数据
3. 用户点赞状态管理
4. 防刷机制

请先分析这个需求的可行性、技术方案和潜在问题,
给出详细的实现计划。我确认后再开始写代码。

方法二:使用 /plan 命令

Claude Code 的 /plan 命令可以强制 AI 先输出执行计划:

/plan 实现用户评论功能

AI 会先分析项目结构、依赖关系,然后给出详细的实现步骤。你可以:

  • 同意计划并继续
  • 修改计划中的某些步骤
  • 要求 AI 重新规划

方法三:分步骤执行大任务

对于大型功能,不要一次性给太多指令:

第一步:设计数据库结构
---
我们需要添加评论功能,请先设计:
1. comments 表结构
2. 需要新增的 API 端点
3. 与现有用户系统的关联

等待用户确认后,再进行下一步。

第二步:实现后端 API
---
(确认第一步后)现在请实现评论的 CRUD API。

第三步:实现前端组件
---
(确认第二步后)现在请实现评论列表和评论输入框组件。

方法四:强制规划模式

对于关键决策,可以明确要求 AI 进行规划:

在开始写代码之前,请先:
1. 分析现有代码结构(特别是 auth 相关的部分)
2. 设计评论功能的数据库迁移方案
3. 列出需要修改/新增的文件
4. 识别潜在的冲突点和风险

我会根据你的分析决定如何进行。

规划阶段应该包含什么?

一份好的执行计划应该包含:

1. 问题分析

  • 需求的核心目标是什么?
  • 有哪些边界条件和特殊情况需要处理?
  • 与现有系统如何交互?

2. 技术方案

  • 数据模型设计
  • API 接口设计
  • 前端组件结构
  • 需要安装的依赖

3. 实现步骤

  • 具体的文件修改清单
  • 推荐的实现顺序
  • 可能的替代方案

4. 风险评估

  • 潜在的问题和冲突
  • 需要注意的兼容性问题
  • 测试建议

实际案例

案例一:添加深色模式

规划阶段:

用户:我想给网站添加深色模式支持

Claude Code 规划:
1. 分析现有样式系统
   - 使用 Tailwind CSS
   - 已有 theme 相关的 CSS 变量
   - 需要支持系统偏好和手动切换

2. 技术方案
   - 方案 A:CSS 变量 + Tailwind dark mode
   - 方案 B:CSS-in-JS 动态主题
   - 推荐方案 A

3. 实现步骤
   - 修改 tailwind.config.js
   - 添加 dark: 前缀到现有样式
   - 创建 ThemeToggle 组件
   - 添加 localStorage 持久化

4. 风险
   - 第三方组件可能不支持 dark mode
   - 需要检查所有页面的颜色使用

执行阶段: 用户确认后,Claude Code 按计划实现。

案例二:重构身份认证

规划阶段:

用户:我想把当前的 session-based auth 改成 JWT

Claude Code 规划:
1. 风险评估 ⚠️
   - 这是核心安全功能
   - 需要平滑迁移,不能中断现有用户登录
   - 建议分阶段实施

2. 技术方案
   - 保留 session 作为过渡
   - 新增 JWT 生成和验证逻辑
   - 双轨验证:新用户用 JWT,老用户继续用 session

3. 实现步骤(分 3 阶段)
   - Phase 1: 添加 JWT 工具函数(不修改现有逻辑)
   - Phase 2: 新登录使用 JWT,逐步迁移
   - Phase 3: 移除 session 逻辑

4. 测试要点
   - 并发登录测试
   - Token 过期测试
   - 回滚测试

常见问题

Q: 这样不会更慢吗?

确实多了一步,但实际效率更高:

  • 减少返工:规划阶段发现的方案问题,在执行阶段可能就是几小时的返工
  • 减少 AI token 消耗:规划阶段的 token 远少于重写代码的 token
  • 减少认知负担:不用一直盯着 AI 写代码

Q: 什么时候用,什么时候不用?

适合用规划模式:

  • 新功能开发
  • 涉及多个文件的修改
  • 架构调整或重构
  • 不熟悉的领域

直接执行即可:

  • 简单的 bug 修复
  • 单一文件的明确修改
  • 重复性的代码生成
  • 你已经想清楚方案的小改动

Q: 如果 AI 的计划不好怎么办?

  • 指出具体问题,让 AI 重新规划
  • 提出你的想法,让 AI 结合
  • 拆分任务,一次只规划一小部分

总结

「规划与执行分离」不是限制 AI 的能力,而是:

  1. 利用 AI 的分析优势:让它先思考,你来把关
  2. 保持人类的主导权:你是决策者,AI 是执行者
  3. 降低返工成本:在规划阶段发现问题的成本远低于执行后

试试这个方法,你会发现 Claude Code 从一个「代码生成器」变成了真正的「编程伙伴」。


如果你有更多 Claude Code 使用技巧,欢迎在评论区分享!

评论

加载中...

相关文章

分享:

评论

加载中...