学习路线图
根据目标选择最高效的学习路径。
通用基础(所有方向必学)
Go 核心语言
├── GMP 调度器原理
├── 内存模型 & GC
├── Channel & goroutine
├── Interface 机制
└── Error 处理模式
标准库精华
├── fmt / io / os / bufio
├── sync / atomic
├── encoding/json
├── net/http
└── testing路径一:Web 后端开发
预计时间:8-10 周
Week 1-2: Web 框架
- net/http 底层原理
- Gin 路由 & 中间件
- 数据验证 validator
Week 3-4: 数据库
- GORM ORM 操作
- sqlc 代码生成
- go-redis 缓存
Week 5-6: 认证 & 安全
- JWT 认证
- 中间件链
- 限流 & 熔断
Week 7-8: 工程化
- 项目结构规范
- Docker 部署
- 配置管理 Viper
Week 9-10: 进阶
- gRPC 服务间通信
- 链路追踪
- 性能优化 pprof路径二:微服务 & 云原生
预计时间:10-12 周
Week 1-3: 基础巩固
- Go 并发深度
- net/http & gRPC
- Protobuf 设计
Week 4-6: 微服务框架
- Kratos 框架
- 服务注册发现
- 配置中心
Week 7-8: 数据层
- GORM + 分库分表
- Redis 分布式锁
- 消息队列
Week 9-10: 可观测性
- Zap 结构化日志
- Prometheus 指标
- Jaeger 链路追踪
Week 11-12: K8s 集成
- client-go 操作资源
- Operator 开发基础
- Helm Chart 部署路径三:CLI 工具 & 系统编程
预计时间:6-8 周
Week 1-2: CLI 开发
- Cobra 命令框架
- Viper 配置管理
- 进度条 & 交互
Week 3-4: 系统编程
- os/exec 进程管理
- syscall & unsafe
- 文件系统操作
Week 5-6: 网络工具
- net 包底层
- 自定义协议
- 并发服务器
Week 7-8: 发布 & 分发
- 交叉编译
- GoReleaser
- 自动更新优先级推荐
| 优先级 | 模块 | 说明 |
|---|---|---|
| ⭐⭐⭐ | GMP 调度器 | 理解 Go 并发的基础 |
| ⭐⭐⭐ | Channel & goroutine | Go 最核心特性 |
| ⭐⭐⭐ | Interface 机制 | Go 多态的基础 |
| ⭐⭐⭐ | Error 处理 | Go 代码质量关键 |
| ⭐⭐⭐ | Gin / Echo | Web 开发必备 |
| ⭐⭐⭐ | GORM / sqlc | 数据库操作必备 |
| ⭐⭐ | gRPC | 微服务必备 |
| ⭐⭐ | pprof | 性能优化必备 |
| ⭐ | unsafe | 底层优化进阶 |
学习建议
Go 的哲学是"少即是多"。每学一个库,立刻用它写一个完整的小工具或服务。Go 的标准库质量极高,优先吃透标准库再看第三方库。