最近的在学习 Go 语言,一开始的安排很普通,让 AI 规划 Go 的学习流程,先学习基础,比如基础语法,控制结构,函数,数组与切片,字符串和字节…,然后学习面向对象与接口,然后学习并发编程…
就像是大学时候对着教程,一章一章的学习。
但是很快我就反应过来,不对啊,都已经是 2025 年了,怎么还在用旧的学习方法,当然并不是说这些知识不能学,而是需要把整个学习流程的架构进行重构
旧的学习流程
flowchart TD A[确定学习目标<br/>如:学习一门新语言] --> B[查找资料<br/>书籍 / 博客 / 视频课程] B --> C[筛选与整理资料<br/>判断质量与适用性] C --> D[系统阅读与学习<br/>按章节推进] D --> E[理解与记忆<br/>概念 / 语法 / 原理] E --> F[完成练习或作业] F --> G[尝试做项目] G --> H{遇到问题?} H -- 是 --> I[搜索错误信息<br/>查文档 / 搜索引擎] I --> D H -- 否 --> J[阶段性掌握]
这样的学习流程在以前确实是必要的,还记得大学时候我还会边吃饭边在慕课上找视频学习
但是这样的劣势也很明显
- 资料获取成本高
- 学习路径固定
- 反馈慢,试错成本高
- 大量时间消耗在“找资料”和“看教程”
并且往往学出来了也并不意味着你真正的会写项目
AI 时代的学习流程
flowchart TD A[明确工程目标<br/>如:用 Go 写一个 API 服务] --> B[与 AI 对话<br/>快速建立整体认知] B --> C[拆解能力需求<br/>并发 / 错误处理 / 工程结构] C --> D[针对性学习最小知识单元] D --> E[立即动手实践<br/>真实或模拟场景] E --> F[与 AI 进行校验<br/>解释 / Code Review / 对比] F --> G{是否满足工程目标?} G -- 否 --> C G -- 是 --> H[总结认知模型<br/>沉淀可复用经验]
这样的好处是
- 信息获取近乎即时
- 学习路径高度个性化
- 高频试错 + 即时反馈
- 重心从“记住知识”转向“构建工程认知模型”
这种情况下我们最初目标不再是「我要学习 Go 这门语言」,而是「我要学习用 Go 实现一个 API 服务」,从「我要掌握所有的语言语法,API」变成了「我要知道 Go 语言的为什么适合做后端服务,他有什么特性是需要掌握的」
类比学习
同时作为一个已经有前端基础的工程师,类比也是非常其中非常有用的学习方法,特别是有 AI 之后,我们可以非常方便的让 AI 帮我们类比两个语言的共性和差异,这样 Go 的知识就不再是从一片空地上长出来的,而是从原来的神经元上衍生出来,这样对于知识的吸收掌握是非常有利的,这样可以
- 降低理解成本
- 降低遗忘概率
- 防止知识孤岛
因为大脑的设计就是偏向于在已知空间中找差异,而不是在未知空间中凭空构建
当 Go 的知识是从 Node/前端衍生出来的,你会自然形成:
- 什么时候 Go 更优
- 什么时候 Node 更合适
- 哪些问题是语言层面差异,哪些是架构问题
这不是教程能直接教的,而是对照中自然生成的能力。
构建工程认知网络
以前我们会把前后端工程师分的很开,因为不同语言的认知成本很高,我们需要记忆语法, API,框架,这对于大部分人来说需要非常大的认知负担
所以在旧范式下,职业路径往往是:
前端工程师 → 更熟的前端工程师 → 某一框架专家
语言是离散技能点,每增加一门语言,就增加一份学习成本。
而在AI 时代,语言更像是同一工程认知网络上的不同“表达层”
一旦核心认知(并发、I/O、状态、错误、抽象边界)形成:
- 新语言更多是在映射这些概念
- 学习成本不再线性叠加
- 语言之间会互相“加速理解”
这也是为什么第二、第三门语言反而学得更快。
语法不在是负担,因为有 AI 去记忆这些底层的知识点,而工程师要做的是理解整体的架构,结果就是只懂一侧实现细节,但不理解整体系统的工程师,价值在下降
当然这不是说前端没前途 / 后端更高级
本质上在于 AI 让认知负担降低导致人需要去思考更加高级一层的抽象和架构,这在汇编语言发展到更高级语言的过程中是同样发生的,只是这次来的更加的彻底
所以未来工程师的差距,不在于“会不会某门语言”,而在于“能否让新语言或者说一个新的能力快速接入自己的认知网络”。
并且需要在更高层的认知网络上更加合理的选择使用不同的能力,来生产出市场需要的产品