后端 / 云原生 · 3-6 个月
Go学习路线
学习简洁语法、接口、错误处理、并发、HTTP 服务和工程化,面向高并发后端与云服务。
A Tour of GoGo 官方交互式教程。访问官方资料 ↗学习方法
每个阶段都要完成三件事
能用自己的话解释
不要只记语法,先说清它解决什么问题。
从空目录做项目
减少照抄,主动处理输入、错误和边界情况。
通过检查再继续
不会的部分回到文档和调试器,而不是跳过。
学习顺序
Go的 4 个阶段
建议按顺序展开学习。时间为每周投入 8-12 小时的参考值。
01基础 · 2-4 周语法、模块与工具链能使用 go 命令完成模块化程序。
需要学习
- 变量、函数、结构体与方法
- slice、map、接口与错误
- go mod、fmt、test 和 vet
动手练习
- 命令行记账工具
- JSON 配置读取
- 为函数编写表格测试
进入下一步前
- 显式处理 error
- 理解零值
- 能使用 gofmt 和 go test
官方资料与延伸阅读
Go Tour交互式学习语言基础。打开 ↗Effective Go学习惯用写法。打开 ↗02核心 · 3-5 周并发与上下文理解 goroutine、channel 和取消机制。
需要学习
- goroutine 与 channel
- select、context 和超时
- mutex、数据竞争与 race detector
动手练习
- 并发下载器
- 可取消任务队列
- 修复一个数据竞争
进入下一步前
- 不会无界创建 goroutine
- 会传播 context
- 能使用 -race 检查
官方资料与延伸阅读
Go Concurrency Patterns官方并发管道文章。打开 ↗03后端 · 4-6 周HTTP API 与数据库能构建有超时、校验和数据库操作的服务。
需要学习
- net/http、路由与中间件
- JSON、校验和错误响应
- database/sql、事务和连接池
动手练习
- 待办 API
- 带超时的外部请求
- 数据库事务练习
进入下一步前
- 服务设置合理超时
- 错误结构一致
- 正确关闭响应体和数据库资源
官方资料与延伸阅读
Go Web Applications官方 Web 应用教程。打开 ↗database/sql标准数据库接口。打开 ↗04工程 · 3-5 周测试、观测与部署让 Go 服务具备生产运行基础。
需要学习
- 单元测试、基准和 httptest
- 日志、指标、健康检查
- 配置、容器和优雅关闭
动手练习
- API 集成测试
- 增加健康检查
- 容器化并部署服务
进入下一步前
- 关键路径有测试
- 服务可以优雅退出
- 能定位慢请求和错误