---
title: "4.3.4 迭代优化的艺术"
order: 5
---


![04-practice-0-to-1_4.3-core-features_4.3.4-iterate.png](/images/Basic/04-practice-0-to-1_4.3-core-features_4.3.4-iterate.png)
# 4.3.4 迭代优化的艺术

> **本节目标**：学会如何有效地追问，让 AI 把"能用"变成"好用"

到目前为止，你的待办清单已经"能用"了。但可能有些地方不太满意：

- 样式想再调整一下
- 交互细节想优化
- 想添加一些小功能

这时候，**迭代追问**就派上用场了。

## 为什么 AI 第一次输出往往不完美

这不是 AI 的问题，也不是你的问题。原因很简单：

| 你脑海中的画面 | AI 理解的内容 | 实际输出 |
|--------------|--------------|---------|
| 100% 细节 | 70% 文字描述 | 60% 代码实现 |

信息在传递过程中必然会有损失。所以**第一次输出不完美是正常的**，迭代追问才是常态。

::: info 📖 回顾第三章
这正是第三章 3.5 节"迭代对话的艺术"中讲到的核心观点。本节是那些原则的实战演练。
:::

## 追问的三要素

有效的追问需要包含三个信息：

| 要素 | 说明 | 示例 |
|------|------|------|
| **现状** | 现在是什么样 | "点击完成后，任务还在原来的位置" |
| **期望** | 你想要什么样 | "我希望已完成的任务自动移到列表底部" |
| **差异** | 具体差在哪 | "现在位置不变，我要它移到底部" |

## 真实迭代对话示例

假设你对"标记完成"功能不太满意，想做一些调整。看看这个三轮对话：

### 第一轮：发现问题

**你发现**：已完成的任务和未完成的混在一起，不好区分。

**你发送**：
```
完成功能可以用了，但我有个改进想法：
我希望已完成的任务能自动移到列表底部，
这样未完成的任务始终显示在上面，更容易看到。
请帮我实现这个功能。
```

**AI 可能的回应**：修改代码，实现了自动排序。

### 第二轮：继续调整

**你测试后发现**：排序是有了，但新添加的任务出现在了列表最后面，不方便看。

**你发送**：
```
排序功能实现了，但有个新问题：
当前情况：新添加的任务出现在列表最后面
我希望的效果：新任务应该出现在未完成任务的最上面
请调整一下，让新任务总是显示在最顶部（已完成的任务之前）。
```

### 第三轮：细节打磨

**你发送**：
```
排序逻辑现在正确了。
还想做一个小优化：能否添加一个"清空已完成"按钮？
点击后可以一次性删除所有已完成的任务。
按钮可以放在列表底部，只在有已完成任务时才显示。
```

三轮对话后，你得到了一个比最初版本好用很多的待办清单。

## 有效反馈 vs 无效反馈

| 无效反馈 | 问题在哪 | 有效反馈 |
|---------|---------|---------|
| "不对，再改改" | AI 不知道哪里不对 | "添加后任务没显示，请检查..." |
| "样式不好看" | 太模糊，AI 无从下手 | "标题字体太小，请改成24px" |
| "感觉怪怪的" | 没有具体信息 | "按钮点击后，文字变化有延迟" |
| "能不能更好一点" | 什么叫"更好"？ | "希望按钮有悬停效果，颜色加深" |

**核心原则**：你的描述越具体，AI 修改得越准确。

## 追问时的实用句式

收集一些好用的句式，遇到问题时可以直接套用：

### 描述问题

```
当前情况：[现在是什么样]
我期望的效果：[想要什么样]
请帮我修改。
```

### 请求添加功能

```
现有功能运行正常。
我想在此基础上添加一个新功能：[描述功能]
具体来说：[列出细节]
```

### 调整样式

```
功能正常，但样式想调整：
- 当前：[现在的样式]
- 期望：[想要的样式]
请只修改样式，不要改变功能逻辑。
```

### 修复 Bug

```
发现一个问题：
- 操作步骤：[1、2、3]
- 期望结果：[应该发生什么]
- 实际结果：[实际发生了什么]
请帮我修复。
```

## 知道什么时候换个思路

如果同一个问题追问了 3 次还没解决，考虑：

| 情况 | 建议 |
|------|------|
| AI 似乎理解错了需求 | 换一种描述方式，用更具体的例子 |
| 问题太复杂 | 把需求拆成更小的步骤，一步步来 |
| AI 反复给出类似的错误代码 | 开始一个新对话，把需求重新整理后发送 |
| 超出了当前技术范围 | 这个功能可能需要更复杂的实现，考虑暂时搁置 |

## 什么时候开始新对话

有时候，与其在旧对话里继续追问，不如开始一个新对话：

| 场景 | 建议 |
|------|------|
| 对话已经很长（超过 10 轮） | AI 可能"失忆"，开新对话 |
| 需求发生了较大变化 | 把新需求整理清楚，开新对话 |
| 代码改得面目全非 | 保存当前可用版本，开新对话从头优化 |
| AI 似乎陷入了某种错误循环 | 开新对话，换一种描述方式 |

**开始新对话时的模板**：

```
我正在开发一个待办清单网页。

【当前状态】
- 已实现：添加任务、删除任务、标记完成
- 现有代码运行正常

【本次目标】
我想优化 [具体功能]，具体需求：
1. [需求1]
2. [需求2]

【现有代码】
[粘贴当前代码]
```

## 本节核心要点

- ✓ 第一次输出不完美是正常的，迭代才是常态
- ✓ 有效追问需要三要素：现状 + 期望 + 差异
- ✓ 描述越具体，AI 修改得越准确
- ✓ 追问 3 次还没解决，考虑换思路或开新对话

## 练习建议

趁热打铁，尝试用本节学到的技巧，对你的待办清单做一些优化：

- [ ] 调整一个你不满意的样式
- [ ] 添加一个你想要的小功能
- [ ] 如果有 Bug，尝试用"描述问题"的句式让 AI 修复

做完后，进入下一节确认所有功能正常。

→ [4.3.5 阶段性成果检查](./4.3.5-checkpoint.md)
