Go 学习路线与速查
这里整理了一条从入门到工程化/微服务的 Go 学习路线,并提供速查入口,便于学习和检索。
学习路线(建议顺序)
- 环境准备与工具:先把开发环境搭好,减少后续卡点。推荐从 Go 的安装和配置 和 课程需要用到的开发环境介绍 开始。
- Go 基础语法:熟悉数据类型、运算与格式化输出,打好语言基础。入口:Go 基本数据类型、运算符和表达式。
- Web 框架与 Gorm:先用 Gin 快速完成 Web 服务,再补齐 ORM 基础。入口:Gin 快速入门、Gorm 是什么。
- RPC / gRPC 入门:理解服务间通信方式与 gRPC 核心概念。入口:什么是 RPC、什么是 gRPC 和 Protobuf。
- gRPC & Protobuf 进阶:补齐认证、拦截器、异常处理等生产必备能力。入口:gRPC 拦截器、gRPC 中的异常处理。
- 用户服务与基础中间件:日志、配置、JWT、Redis 是核心基础设施。入口:Go 日志库 zap、JWT 集成 Gin。
- 服务治理与配置中心:服务注册发现、配置中心与负载均衡,撑起微服务治理。入口:什么是服务注册和发现、Consul 的安装和配置。
- 业务微服务实战:用商品/库存/订单案例串起 gRPC 与 Gin。入口:Model 定义、库存服务架构设计、表结构设计和 Proto 文件定义。
- 搜索服务(Elasticsearch):学习搜索引擎核心概念与 CRUD。入口:什么是 Elasticsearch、Query DSL 查询。
- 分布式理论与事务/消息队列:理解一致性、事务、幂等与 MQ 选型。入口:事务和分布式事务、RocketMQ 的基本概念。
- 可观测性与稳定性:链路追踪、熔断与限流是生产必备。入口:什么是链路追踪、熔断/限流技术选型。
- API 网关与交付部署:了解网关、CI/CD 与发布流程。入口:API 网关对比、部署到远程服务器并运行。
- 工程规范与质量:规范、目录结构与代码质量保障。入口:Go 代码规范、Go 代码检测工具。
- 设计模式与测试:提升可维护性与可验证性。入口:测试金字塔。
- 工具链与扩展:Protoc 插件与 CLI 工具提升效率。入口:Cobra 快速入门。
- 容器与 K8s / DevOps:从容器化到集群部署。入口:Docker 介绍、K8s 基础概念:Pod。
- 总结:整体回顾与查漏补缺。入口:总结。