建立知识地图
先看清有几块、谁依赖谁,再决定学什么
我要学 [领域/技能],目标是 [具体用途]。先给一张知识地图,不要展开讲解:1)拆成 4–7 个模块,各用一句话说明它解决什么问题;2)用表格列出模块间的依赖(学 B 之前必须会 A);3)标出哪 20% 决定 80% 效果,哪些可以后补;4)按我的目标给一条最短路径,并说明这条路径放弃了什么。
使用建议
地图阶段别让它展开讲,一展开就变成教科书,结构反而看不见了。
适合什么场景
- 刚决定自学一个领域,完全不知道有哪些块、也不知道自己现在站在哪时
- 反复开始又放弃(买了三门课都没看完),需要一个能看到进度的结构时
不适合的场景
- 你已经有明确的下一个任务(这周要把这个接口加上缓存),画地图只是拖延时
- 领域变化极快(某个前端框架的内部实现),地图三个月后就过期,而你收不到任何提醒时
示例
输入
领域:分布式系统;目标:能在公司内部评审一个分库分表方案。
你会得到
模块应控制在五到六个(复制、分区、一致性模型、共识、故障检测、可观测性),依赖表要写出硬顺序,比如学共识之前必须先懂复制日志。20% 的关键应落在 CAP 的实际取舍、复制延迟的可见性、分区键选择上。最短路径要明确放弃什么(不读 Paxos 证明、不自己实现 Raft),并说明放弃之后评审时哪一类问题你会答不上来。
常见误用
- 收藏了五张知识地图,一张都没走完——地图带来的确定感替代了学习本身
- 要完地图又让它「顺便把每个模块讲讲」,结果得到一本三百字的假教材,深度全是幻觉
可以这样改
- 加上「每周五小时、共八周」,同一张地图会变成带时间刻度的路径,能看出哪块必须缩水
- 要求同时给「面试路径」和「上手做事路径」并标出分叉点,适合目标还没定的阶段