一周总结:AI 编程入门最重要的 3 个原则
文章目录
- 一、第一周学到了什么
- Day 1:AI 编程是什么
- Day 2:开始前需要准备什么
- Day 3:AI 工具怎么选择
- Day 4:第一次让 AI 写代码
- Day 5:为什么代码不能直接用
- Day 6:新手最容易踩的 5 个误区
- 二、原则一:把 AI 当助手,不要当答案机器
- AI 更适合做什么
- AI 不能替你决定什么
- 正确的协作关系
- 三、原则二:先把问题说清楚,再让 AI 开始编码
- 一个不够清楚的提问
- 一个更清楚的提问
- 新手可以记住的 4 个描述要素
- 信息不完整时,让 AI 先提问
- 四、原则三:所有 AI 输出都要经过验证
- 验证第一层:代码能不能运行
- 验证第二层:结果对不对
- 验证第三层:是否适合项目
- 验证第四层:是否存在安全风险
- 五、把 3 个原则变成一个简单工作流
- 第一步:先描述目标
- 第二步:补充限制
- 第三步:要求解释和测试
- 第四步:自己运行和修改
- 六、新手每天可以执行的 5 分钟清单
- 七、第一周的学习成果应该是什么
- 八、总结
- 原则一:把 AI 当助手,而不是答案机器
- 原则二:先把问题说清楚,再让 AI 开始编码
- 原则三:所有 AI 输出都要经过验证
✍创作者:全栈弄潮儿
🏡 个人主页:全栈弄潮儿的个人主页
🏙️ 个人社区,欢迎你的加入:全栈开发社区
📙 专栏地址,欢迎订阅:AI 编程提效实战
这是《AI 编程提效实战》的第 7 篇文章。
过去一周,我们从最基础的问题开始,逐步认识了 AI 编程:
- AI 编程到底是什么?
- 开始使用前需要准备哪些内容?
- 不同 AI 工具应该怎么选择?
- 第一次如何让 AI 帮我们写代码?
- 为什么 AI 生成的代码不能直接使用?
- 新手最容易遇到哪些误区?
如果你是刚开始接触 AI 编程,可能已经发现:
AI 编程并不是“对 AI 说一句话,然后自动得到最终项目”。
它更像是一种新的开发协作方式。
你需要学会描述问题、理解代码、运行验证,也需要知道什么时候应该接受 AI 的建议,什么时候应该停下来自己判断。
今天不再介绍新的工具,而是把前 6 天的内容总结成 3 个最重要的入门原则。
一、第一周学到了什么
Day 1:AI 编程是什么
AI 编程是在开发过程中借助 AI 完成一部分工作。
它可以帮助我们:
- 解释陌生代码。
- 生成基础代码。
- 分析报错信息。
- 补充测试思路。
- 整理技术文档。
- 梳理需求和实现步骤。
但 AI 不能代替开发者完成所有判断。
代码是否符合业务需求、是否安全、是否可以上线,仍然需要开发者自己确认。
Day 2:开始前需要准备什么
使用 AI 编程前,不需要准备一套非常复杂的设备和工具。
对初学者来说,通常准备下面这些内容就够了:
- 一个可以使用的 AI 工具账号。
- 一个代码编辑器。
- 一门入门级编程语言。
- 一个可以运行代码的环境。
- 一个用于练习的小项目或小问题。
工具只是入口。
真正重要的是,你要有一个可以反复练习、运行和验证的地方。
Day 3:AI 工具怎么选择
不同工具适合不同阶段和任务。
可以先用一个简单原则选择:
| 使用场景 | 可以优先考虑的工具类型 |
|---|---|
| 学习概念、解释代码 | 对话型 AI |
| 编辑器中补全和修改代码 | IDE 编程助手 |
| 多文件修改、执行命令和运行测试 | 终端型编程 Agent |
初学者不需要一开始就同时使用很多工具。
先选一个自己能够理解和持续使用的工具,熟悉基本流程之后,再逐步扩展。
Day 4:第一次让 AI 写代码
第一次提问时,不要从“帮我生成一个完整项目”开始。
更合适的练习方式是:
描述一个很小的目标 ↓ 让 AI 给出简单实现 ↓ 复制到本地运行 ↓ 修改输入,观察结果例如,让 AI 写一个判断数字正负的函数,或者写一个读取文本文件的小脚本。
功能越小,越容易理解每一行代码,也越容易发现问题。
Day 5:为什么代码不能直接用
AI 生成的代码可能出现这些情况:
- 误解需求。
- 不符合当前项目的技术栈。
- 漏掉空值、边界和异常输入。
- 使用过时或不兼容的写法。
- 没有经过你的真实环境验证。
所以,拿到代码后应该:
先理解 ↓ 小范围运行 ↓ 测试正常、边界和异常情况 ↓ 确认后再使用Day 6:新手最容易踩的 5 个误区
前一天我们重点讨论了 5 个常见问题:
- 把 AI 代码直接复制进项目。
- 只说“帮我写代码”,不给背景和限制。
- 只测试正常情况,不测试边界和异常。
- 遇到报错只发一句“这是什么问题”。
- 一次让 AI 修改太多内容,却不检查修改范围。
这些问题看起来各不相同,本质上都指向同一个原因:
没有把 AI 放进一个“理解、修改、验证”的开发流程中。
接下来,我们把这一周的内容进一步归纳。
二、原则一:把 AI 当助手,不要当答案机器
这是 AI 编程入门最重要的第一个原则。
AI 可以协助你完成很多工作,但它不是一个能够自动对结果负责的开发者。
AI 更适合做什么
在学习和开发过程中,AI 很适合帮助你:
- 把陌生概念换一种方式解释。
- 根据明确需求生成代码草稿。
- 提供多个实现思路。
- 根据报错整理排查方向。
- 帮你补充容易遗漏的测试场景。
- 把代码整理成文档或清单。
这些任务有一个共同点:
AI 提供的是信息、建议或草稿,最后仍然需要你判断和验证。
AI 不能替你决定什么
下面这些内容不能完全交给 AI:
- 业务需求到底是什么。
- 哪种方案最适合你的项目。
- 用户权限是否应该放开。
- 线上数据是否可以修改。
- 一段代码是否真的安全。
- 一个功能是否已经满足验收要求。
例如,你可以问 AI:
这个登录功能可能有哪些安全风险?但不能只因为 AI 回复“没有明显问题”,就认为它已经完成了安全审查。
你还需要结合项目代码、官方文档、测试结果和实际运行环境进行确认。
正确的协作关系
可以把开发者和 AI 的关系理解为:
开发者:提出目标、提供上下文、做出判断 AI:解释问题、生成草稿、提出建议、辅助检查 开发者:运行代码、验证结果、承担交付责任如果把 AI 当答案机器,你会越来越依赖复制和粘贴。
如果把 AI 当助手,你会在使用它的同时提升自己的理解和判断能力。
三、原则二:先把问题说清楚,再让 AI 开始编码
AI 输出质量通常和输入信息有关。
这并不意味着 Prompt 越长越好,而是要让 AI 得到完成任务所需要的关键信息。
一个不够清楚的提问
帮我写一个待办事项功能。AI 不知道:
- 使用什么技术栈。
- 待办事项有哪些字段。
- 是否需要新增、编辑和删除。
- 数据保存在哪里。
- 是否需要登录。
- 你希望得到完整项目,还是一个简单示例。
一个更清楚的提问
我正在学习 JavaScript,想练习一个最简单的待办事项功能。 要求: 1. 使用原生 HTML、CSS 和 JavaScript。 2. 支持新增待办事项。 3. 点击复选框后可以标记完成。 4. 支持删除待办事项。 5. 数据暂时只保存在浏览器内存中,不使用数据库。 6. 请把代码拆成 HTML、CSS 和 JavaScript 三个文件。 7. 请说明每个文件的作用,以及如何运行。第二个问题并不复杂,但它给出了足够的背景、目标、范围和输出格式。
新手可以记住的 4 个描述要素
向 AI 描述编程需求时,可以先写这 4 项:
背景:我正在做什么,使用什么技术。 目标:这次具体想完成什么。 限制:哪些功能不做,哪些内容不能修改。 输出:希望 AI 给出代码、步骤、解释还是测试。例如:
背景:我正在学习 Python,使用 Python 3.12。 目标:写一个读取 CSV 并统计总金额的脚本。 限制:不使用第三方库,金额为空时按 0 处理。 输出:先解释思路,再给代码,最后给 3 组测试数据。当你能把这 4 项说清楚,AI 就不需要频繁猜测。
信息不完整时,让 AI 先提问
如果需求本身还没有想清楚,不要强行要求 AI 直接写代码。
可以这样说:
在开始写代码之前,请先列出你需要确认的问题。 对于不确定的业务规则,不要自行假设。这会帮助你发现自己原本没有意识到的问题。
四、原则三:所有 AI 输出都要经过验证
这是把 AI 编程从“看起来有效”变成“真正有效”的关键。
验证第一层:代码能不能运行
先确认最基本的事情:
- 文件能否正常启动。
- 代码有没有语法错误。
- 依赖是否已经安装。
- 导入路径是否正确。
- 关键函数是否能够被调用。
如果代码不能运行,先不要急着讨论更复杂的优化。
验证第二层:结果对不对
代码能运行之后,还要确认结果是否符合需求。
至少准备:
- 一组正常输入。
- 一组边界输入。
- 一组异常输入。
例如测试一个计算折扣的函数:
console.log(calculateFinalPrice(50));// 正常:50console.log(calculateFinalPrice(100));// 边界:90console.log(calculateFinalPrice(200));// 正常:190console.log(calculateFinalPrice(-1));// 异常:应该被拒绝测试数据不需要很多,但必须覆盖关键规则。
验证第三层:是否适合项目
即使结果正确,也要检查它是否适合当前项目:
- 是否遵守项目的目录结构。
- 是否使用了团队已有的工具方法。
- 是否符合变量命名和代码风格。
- 是否修改了无关文件。
- 是否引入了不必要的依赖。
示例代码可以独立运行,不代表可以直接放入任何项目。
验证第四层:是否存在安全风险
尤其要注意下面这些内容:
- 用户输入是否未经检查就显示或执行。
- 密码、令牌和密钥是否被打印到日志。
- 接口是否缺少权限校验。
- 文件上传是否限制类型和大小。
- 数据库查询是否直接拼接用户输入。
遇到不确定的安全问题,可以让 AI 协助列清单:
请从初学者容易理解的角度, 检查这段代码可能存在的输入校验、权限和敏感信息风险。 不要直接判断“安全”或“不安全”,请说明每个风险应该如何验证。AI 可以提供检查方向,但安全问题不能只靠一句回答确认。
五、把 3 个原则变成一个简单工作流
这 3 个原则并不是分开的知识点,而是可以组成一条完整流程:
第一步:把 AI 当助手 不把第一版答案当最终答案 第二步:说清楚问题 提供背景、目标、限制和输出要求 第三步:验证输出 运行代码,测试边界,检查项目和安全风险如果用一个具体的小功能来练习,可以按照下面的方式进行:
第一步:先描述目标
请帮我实现一个简单的待办事项新增功能。 我正在学习原生 JavaScript,希望代码容易理解。第二步:补充限制
要求: 1. 不使用第三方库。 2. 待办事项不能为空。 3. 新增后显示在列表中。 4. 本次只实现新增,不实现编辑和删除。第三步:要求解释和测试
请先说明实现思路,再给出代码。 请解释关键代码,并列出正常、空输入和重复输入的测试场景。第四步:自己运行和修改
拿到代码后:
- 先运行一次。
- 输入正常内容。
- 输入空内容。
- 修改一行代码,观察结果。
- 再让 AI 解释你修改后的代码。
这样做的目的不是让 AI 替你完成练习,而是通过 AI 帮助你建立完整的理解闭环。
六、新手每天可以执行的 5 分钟清单
如果你每天只想花几分钟练习,可以使用下面这份清单:
[ ] 今天让 AI 解释了一段代码 [ ] 今天自己运行了一段 AI 生成的代码 [ ] 今天测试了至少一个边界情况 [ ] 今天修改了一处代码并观察结果 [ ] 今天记录了一个容易出错的知识点不要只记录“AI 给了我什么答案”,还可以记录:
今天遇到的问题: [问题是什么] AI 给出的建议: [建议是什么] 我验证后的结果: [哪些正确,哪些需要修改] 下次应该补充的上下文: [还缺少哪些信息]经过一段时间后,你得到的就不只是一些零散代码,而是一套自己的学习和开发经验。
七、第一周的学习成果应该是什么
完成前 7 天后,不要求你已经能够独立开发复杂项目。
更重要的是,你应该开始具备下面这些能力:
- 能够用自己的话解释 AI 编程是什么。
- 能够选择一个适合当前任务的工具。
- 能够描述一个简单、明确的编程需求。
- 能够运行 AI 生成的示例代码。
- 能够发现一些明显的错误和边界问题。
- 能够在遇到报错时提供完整上下文。
- 能够意识到 AI 输出需要验证。
如果目前还做不到全部,也没有关系。
你可以选择一个最小目标开始:
今天不追求让 AI 写出更多代码,只练习把一段代码看懂并运行起来。
只要能够持续完成小任务,后面的学习就会越来越顺利。
八、总结
AI 编程入门最重要的 3 个原则是:
原则一:把 AI 当助手,而不是答案机器
AI 可以解释、生成、分析和整理,但不能替你理解全部业务,也不能替你承担最终责任。
原则二:先把问题说清楚,再让 AI 开始编码
至少告诉 AI:
- 你当前的背景。
- 这次要完成的目标。
- 有哪些限制和边界。
- 希望它用什么形式输出。
原则三:所有 AI 输出都要经过验证
代码要经过:
- 运行验证。
- 结果验证。
- 边界验证。
- 项目规范验证。
- 必要的安全检查。
可以把这一周的核心内容浓缩成一句话:
AI 帮你提高的是解决问题的速度,但你仍然需要负责理解问题、判断结果和验证代码。
下一篇文章,我们将开始进入更具体的使用方法:
如何向 AI 清楚描述一个编程需求。
✍坚持原创,求关注,点赞,收藏
