Appearance
Go 语言以简洁的并发模型和出色的性能著称,是云原生时代的首选后端语言之一。
Go 语言基础入门
必修
Go 语言概述与环境搭建
必修
Go 安装配置、GOPATH 与 Go Modules、IDE(GoLand/VS Code)
基础语法
必修
变量与常量、数据类型(int/float/string/bool)、类型推导
流程控制
必修
if/else、for 循环(Go 只有 for)、switch、goto
函数
必修
多返回值、命名返回值、可变参数、defer 延迟执行
数组与切片
必修
数组声明、切片底层结构、append/copy、slice 扩容机制
映射 map
必修
map 声明与初始化、增删改查、键值迭代
字符串处理
必修
strings 包、strconv 类型转换、unicode/utf8 编码
结构体与方法
必修
struct 定义、嵌套结构体、方法接收器(值/指针)
接口 interface
必修
接口定义与实现、空接口、类型断言、接口组合
错误处理
必修
error 接口、自定义错误、panic/recover 异常恢复
包管理与模块化
必修
go mod 命令、模块导入、init 函数、访问权限
并发编程
必修
goroutine 入门
必修
go 关键字启动、Goroutine 调度 GMP 模型
channel 通信
必修
有无缓冲 channel、单向 channel、select 多路复用
WaitGroup 同步
必修
sync.WaitGroup 计数器、任务编排
Mutex 与 RWMutex
必修
互斥锁、读写锁、锁竞争避免
sync.Map 与 atomic
必修
并发安全 map、原子操作
并发模式
必修
工作池(worker pool)、扇出/扇入(fan-out/fan-in)
context 包
必修
超时控制、取消传播、WithCancel/WithTimeout/WithValue
竞态检测
必修
go race detector、数据竞态排查
高级并发模式
选修
Pipeline 流水线、信号量、单例模式 sync.Once
网络编程与 Web 开发
必修
net/http 标准库
必修
路由处理、HTTP 客户端、请求/响应处理
template 模板引擎
必修
文本/HTML 模板、模板继承
Gin 框架
必修
路由分组、中间件机制、参数绑定与验证
RESTful API
必修
JSON 序列化、状态码规范、版本控制
数据库操作
必修
database/sql 标准库、GORM ORM 框架、迁移
Redis 集成
必修
go-redis 库、缓存策略、分布式锁
日志库
必修
zap / logrus 结构化日志、日志级别、文件轮转
单元测试与基准测试
必修
testing 包、表格驱动测试、httptest、覆盖率
中间件开发
选修
认证中间件、限流中间件、恢复中间件
WebSocket
选修
gorilla/websocket 库、实时通信
微服务与云原生
必修
gRPC 框架
必修
Protocol Buffers 定义、protoc 编译、一元/流式 RPC
服务注册与发现
必修
Consul / etcd / Nacos 集成
配置管理
必修
Viper 配置库、环境变量解析、热加载
消息队列
必修
RabbitMQ / Kafka Go 客户端、生产消费模式
Docker 容器化
必修
多阶段 Go 镜像构建、scratch/alpine 基础镜像
Docker Compose
必修
多服务编排、网络配置、健康检查
Kubernetes 基础
必修
Pod/Deployment/Service/ConfigMap 资源对象
Prometheus 监控
必修
metrics 暴露、Grafana 仪表盘、AlertManager
服务网格 Istio
选修
流量管理、安全策略、可观测性
Helm 包管理
选修
Chart 结构、模板渲染、版本管理
CI/CD 流水线
选修
GitHub Actions / GitLab CI 自动化构建与部署
进阶与生态拓展
选修
Go-zero / Kratos 微服务框架
选修
微服务工程化实践、代码生成
Go-kit 工具包
选修
服务分层、端点/传输层、中间件链
高性能网络库
选修
netpoll、gnet 事件驱动框架
分布式追踪
选修
OpenTelemetry Go SDK、Jaeger/Zipkin
性能优化
选修
pprof 性能分析、trace 追踪、逃逸分析
CGO 编程
选修
Go 调用 C 代码、类型转换、内存管理
设计模式在 Go 中的应用
选修
选项模式、函数选项、策略模式