要从“熟练用户”升级为“高端玩家”,核心不是写更长的提示词,而是建立一套能驾驭 AI 的工程化认知框架。以下是精炼的学习提升指南,聚焦最关键的 4 个知识领域。


一、软件工程:系统设计 + 测试 + 版本控制(最重要)

为什么必需
AI 擅长写函数,但不擅长设计稳定、可维护、可协作的系统。高端玩家用 AI 生成符合设计模式、有测试覆盖、可独立部署的模块。

具体学习内容

  • 设计模式(工厂、策略、观察者等 23 种)—— 让 AI 生成的代码结构统一、易扩展
  • 测试策略:单元测试、集成测试、Mock、测试驱动开发(TDD) —— 让 AI 自己写测试用例
  • 版本控制:Git 分支模型(Git Flow / GitHub Flow)、PR 流程、语义化提交

学习来源

  • 书籍:《设计模式:可复用面向对象软件的基础》(四人帮)、《代码整洁之道》
  • 实践:用 AI 辅助重构一个已有小项目,要求它“应用策略模式替换 if-else”
  • 测试:pytest 官方教程 + 要求 AI “为该函数生成参数化测试用例”

二、提示词工程:结构化 + 上下文管理(进阶部分)

为什么必需
普通用户写“请写一个登录功能”;高端玩家管理角色、约束、示例、格式、边界条件,把提示词当成代码维护。

具体学习内容

  • 结构化提示模板:角色 + 步骤 + 示例(少样本) + 输出格式约束 + 负面约束(不要做什么)
  • 上下文窗口管理:何时把旧代码/错误日志作为“参考”,何时让 AI “总结并忘掉”
  • 提示链:分解任务 → 分别生成 → 组合验证(例如:先设计数据模型,再写 CRUD,最后生成 API 测试)
  • 元提示:让 AI 帮你优化提示词(“请将以下需求改写为清晰的结构化提示”)

学习来源

  • OpenAI 官方《Prompt engineering guide》中“Few-shot”“Chain-of-thought”部分
  • 项目实践:维护一个 prompts/ 文件夹,存放每个子系统的 .md 提示模板,用变量注入代码上下文
  • 工具:Cursor / Continue 等 IDE 插件,学习其 .cursorrules 配置

三、离散数学:逻辑 + 集合 + 图(辅助推理能力)

为什么必需
AI 容易在复杂条件判断、遍历、递归、状态转换上出错。离散数学训练你精确描述逻辑关系,并验证 AI 输出的正确性。

具体学习内容

  • 命题逻辑与谓词逻辑:用 AND/OR/NOT/∀/∃ 写明确前置/后置条件
  • 集合与关系:理解数据库连接、权限交集、去重等(你会更懂让 AI 写 SQL)
  • 图论基础:依赖分析、路径查找、树形结构(适用于工作流、菜单、依赖注入)

学习来源

  • 书籍:《离散数学及其应用》(Kenneth Rosen)第 1、2、8 章
  • 实战练习:给 AI 一个图结构数据,要求用 BFS/DFS 遍历并验证;用逻辑表达式描述“只有管理员或作者可删除评论”

四、分类学:领域驱动设计中的“实体-值对象-聚合”(专项补充)

为什么必需
AI 容易混淆“User”是实体(有 ID,可变)还是值对象(无 ID,不可变)。分类学帮你建立清晰的领域模型,让 AI 生成的代码符合业务语义。

具体学习内容

  • 实体 vs 值对象:区分生命周期与标识重要性
  • 聚合根与边界:明确事务一致性范围(例如:订单和订单行一起修改)
  • 限界上下文:同一术语在不同模块含义不同(如“商品”在“库存”和“营销”中属性不同)

学习来源

  • 书籍:《领域驱动设计》(Eric Evans)第 2、5、6 章
  • 实践任务:要求 AI “将购物车设计成聚合根,商品项作为值对象,并给出不变性约束”

辅助(非必需但加分)

知识领域何时需要最小学习内容
统计学处理数据清洗、抽样、A/B测试描述统计、抽样偏差、假设检验(p值)
类型系统大型 TypeScript / Rust 项目泛型、代数数据类型(联合/交叉类型)

高端玩家学习路线图(4周可落地)

  1. 第1周:重学 离散数学 第1-2章 + 用AI 生成10个带逻辑条件的函数,人工做断言验证。
  2. 第2周:学 设计模式 5个(工厂、策略、观察者、适配器、单例) → 给AI旧代码重构并写测试。
  3. 第3周:建立 prompts/ 模板库,把一个中型功能(如用户注册+邮件验证)拆成3个提示链完成。
  4. 第4周:用 领域驱动设计 分类重构一个已有项目,明确聚合根与值对象,让AI按新分类重写。

最终能力标志:你能 30分钟内,用AI生成一个包含设计模式、完整测试、领域分类清晰的模块,且能直接合并入主分支。