826 字
约 2 分钟
5
S09-X01 · 学习路线与待补充清单
定位:附录。学习路线(A-1890 的重排)+ 旧素材缺口登记(A-2223)。
前置:S09-B01–B07。
覆盖旧文:A-1890(111) A-2223(5) = 116 点。
上一篇:S09-B07 · 函数、闭包与"循环变量捕获"
下一篇:S09-J01 · 切片底层。
1. 六阶段路线
| 阶段 | 内容 | 对应正文 | 可验收产物 |
|---|---|---|---|
| 1 | 安装、go mod、gofmt |
B01 | 一个能 go build 的 hello |
| 2 | 类型系统:变量/常量/iota/指针 | B02、B03 | 能解释零值与指针语义 |
| 3 | 复合类型:数组/切片/map | B04、B05 | 能预测切片共享行为 |
| 4 | 控制流与函数/闭包 | B06、B07 | 能识别循环变量捕获 bug |
| 5 | 字符串与编码 | J02 | 能安全截断中文字符串 |
| 6 | 模块与依赖 | A01 | 能排查 go mod tidy 失败 |
原则:每阶段都要有"能跑的东西",不要只读不写。
2. 缺口登记(A-2223 的扩展)
旧文有一张 Go abroad!TODO 卡(5 点),内容是"待补充"。本系列把缺口显式列出来:
| 缺口 | 说明 | 处置 |
|---|---|---|
| 并发(goroutine / channel / select) | 旧素材完全没有对应卡片 | 不在本系列硬编;归 S05 并发分支或后续补充 |
| 接口与反射 | 旧素材只提到"函数实现接口" | 本系列仅 B07 §4.3 提及,未展开 |
错误处理(error 惯例) |
旧素材未涉及 | 缺口 |
标准库(net/http、encoding/json) |
旧素材未涉及 | 缺口 |
测试(go test、表驱动) |
旧素材未涉及 | 缺口,归 S16 |
| 性能与 pprof | 旧素材未涉及 | 缺口 |
| 泛型(1.18+) | 旧素材早于泛型 | 缺口 |
判据:"旧卡没有的,不硬编。" 硬编会把系列变成"我写的 Go 教程",而不是"博客内容重组"。这些缺口已登记,后续可基于新素材补充。
3. 与 S10(Python)的对照
| 维度 | Go | Python |
|---|---|---|
| 类型 | 静态、显式 | 动态、可选标注 |
| 环境 | 单二进制,无运行时 | 解释器 + 虚拟环境 |
| 依赖 | go.mod/go.sum |
requirements.txt/pyproject.toml |
| 字符串 | 字节序列 + rune | Unicode 字符串(隐式) |
| 并发 | goroutine(内置) | GIL / asyncio |
学习迁移建议:先学 S10(Python 环境与依赖)再学 S09(Go 的类型与依赖),两边的"可复现构建"概念可以互相印证。
4. 自检
- 六阶段路线里哪一阶段最容易被跳过?后果?
- 为什么"并发"没写进本系列?
- Go 与 Python 在"字符串"上的根本差异是什么?
- 缺口登记的意义是什么(对读者、对后续系列)?
5. 下一篇
S09-J01 · 切片底层:cap 增长、共享与内存泄漏
进入进阶层:从"会用切片"到"能预测切片行为"。下一篇用三索引切片与 copy 演示如何切断共享。
本篇属于系列《S09 · Go 语言》,是基础层附录。旧文来源:A-1890/A-2223。
S09-X01 · 学习路线与待补充清单
https://www.clxhxhhr.top/posts/5314/ 评论
0 条
还没有评论,先写一条吧。