学习路线
我不相信「收藏即学会」。这三条路线是给自己排的优先级 —— 从后端底子走到 Agent 应用, 每一站都标了「先做什么、坑在哪、什么时候该停」。
很多人一上来就问「用哪个框架」,这是错的问题。Anthropic 在他们的工程博客里给过一个很清楚的区分 —— 大多数场景用固定的 workflow 就够了,硬上 Agent 只会换来更慢、更贵、更难调。建议先花十分钟把概念理清,再决定要不要上「Agent」这个词。
先读概念,别急着写代码 半天
动手前先把「Workflow 和 Agent 到底差在哪」搞清楚。这不是学术问题 —— 它直接决定你的架构选型。Anthropic 那篇是业内被引用最多的入门材料,讲清了五种 workflow 模式,也明确说了什么时候不该用 Agent。
把一次对话调通 1-2 天
不要用框架起步。建议先直接用模型 API,很多模式几行代码就能实现。你需要亲手写一遍 HTTP 调用、处理流式返回、拼装多轮消息,才能理解框架在替你做什么。
让模型会调工具 3-5 天
Function Calling 是 Agent 的分水岭。核心只有一件事:你把可用的函数描述给模型,它自己决定什么时候调、传什么参数。框架会帮你把「模型要调工具 → 执行 → 结果回灌 → 生成回答」这个循环封起来。
给模型接上自己的知识 1-2 周
RAG 是这条路上坑最多的一站。顺序别乱:先切块 → 再嵌入 → 存向量库 → 检索 → 加引用。很多人一上来就纠结用哪个向量库,其实切块策略对效果的影响远大于换个数据库。
已有 从关键词到语义:为什么 RAG 一定要做混合检索用图编排把稳定部分焊死 1 周
到这一步你会发现:光靠提示词约束不住模型。像「知识类问题必须先检索」「投诉不要进 Agent」这种规则,写在提示词里模型随时可以不听 —— 要用确定性的流程节点把它固定下来。
待写 为什么我用 LangGraph 而不是纯 Agent 循环接外部工具生态 3-5 天
MCP 是这两年被推得最广的一套协议,本质是「让 Agent 统一地接上外部工具和数据源」。官方文档把它类比成 USB-C:一份实现,到处能插。自己写一个 MCP Server 是最快的理解方式。
待写 手写一个 MCP Server:比读规范快十倍的理解方式让它能被运维 持续
这一步最容易被跳过,但它是「玩具」和「系统」的分界线:可观测(每次调用的完整链路)、评估(检索和回答质量怎么量化)、成本(钱花在哪类问题上)、数据飞轮(答不上来的问题怎么变知识)。
刷题不是刷数量,是按题型建立反射。建议先把题型分类过一遍,再按分类集中攻克,而不是从第 1 题顺着做到第 100 题。同一类题连做 5-8 道,才能形成「看到这类问题就知道用什么套路」的反射。
先建地图,再开始走 1 天
开始刷之前先看一眼按题型组织的路线图,知道整个版图有多大、哪些是主干。这样你每做一道题都知道它属于哪一类,而不是零散地记题。
Hash 表:从「我会写」到「我秒懂」 3 天
这是性价比最高的一类。核心只有一句话:用空间换时间,把查找从 O(n) 降到 O(1)。掌握之后,两数之和、字母异位词、最长连续序列这些都变成同一个套路。
双指针与滑动窗口 1 周
面试出现频率最高的一类。两种形态要分清:双指针解决「有序数组里找配对」,滑动窗口解决「连续子串/子数组满足某条件」。
待写 滑动窗口题型的统一思路链表:考的是指针操作 3 天
套路非常固定:哑结点(dummy)简化边界、快慢指针找中点/判环、反转用三指针。把这几招练熟,链表题基本不会挂。
树与图:递归思维的分水岭 1-2 周
树题看起来多,其实都是同一个模板:「这个问题,我的左右子树分别是什么答案?」把递归的「定义」想清楚,代码自然就出来了。
动态规划:最后再碰 2-3 周
DP 是最容易劝退的一类,建议放到最后。前面的基础没打牢时硬啃 DP,只会打击信心。
先把会用变成懂原理,再谈分布式。后端的路线我建议这样走:语言基础 → MySQL → 框架 → Redis → 分布式与中间件 → 最后回到 JVM 底层。把 JVM 放最后不是因为不重要,而是因为它解释的是「前面这些为什么会有性能问题」—— 没有前面的实践,硬啃内存模型和 GC 只会变成背结论。
语言基础:从「会用」到「知道它怎么实现」 1-2 周
先打牢 Java 语法、面向对象、异常处理这些基本功,然后重点啃集合框架。面试最爱问的也是这里 —— 但别背「HashMap 默认容量是 16」这种结论,要能讲清为什么。
MySQL:先会写,再懂它为什么慢 1-2 周
从能写 SQL、能设计表开始,然后吃透索引。核心是两个问题:B+ 树为什么适合做索引(矮胖、范围查询友好、磁盘 IO 次数少),以及什么情况下索引会失效。
框架:先会用,再理解它替你做了什么 1-2 周
从 SpringBoot 起步最容易上手 —— 但不要停在「能跑起来」。依赖注入、AOP、自动配置这三块是 Spring 的骨架,理解了它们,你才知道为什么加个注解就能生效。
Redis:重点不在会用,在知道会怎么坏 1 周
先学会五种基础数据结构各自的适用场景,然后重点理解缓存会怎么出问题:穿透、击穿、雪崩分别是什么、怎么防,以及缓存和数据库的一致性该怎么做。
分布式与中间件:多个进程怎么协作 2-3 周
到这里要处理的问题变成「多个进程之间怎么协作」:消息队列解决削峰和异步解耦,分布式锁解决跨进程的互斥,再往上就是微服务的拆分、网关与链路追踪。
JVM 与深度原理:回头解释前面的一切 2-3 周
放到最后不是因为它不重要,而是因为它是对前面所有内容的统一解释。有了秒杀、缓存、微服务的实践之后再来学 JVM,你会不断产生「原来当初那个问题是这个原因」的感觉。