字
字节笔记本
2026年2月22日
Golang 开发笔记 - 完整学习路线图
本文是《Golang 开发笔记》的完整目录索引,由 guyan0319 维护的开源项目,涵盖了 Go 语言从基础到高级的全面学习路径,包含环境配置、语言基础、Web 开发、数据库操作、并发编程等 90+ 篇技术文章。
项目简介
golang_development_notes 是一个系统性的 Go 语言学习笔记项目,在 GitHub 上获得 607+ Stars。项目内容覆盖 Go 开发的各个层面,从入门环境搭建到高级并发编程,适合不同阶段的开发者参考学习。
项目地址: https://github.com/guyan0319/golang_development_notes
内容结构
1. Go 环境配置
- Go 安装与目录结构
- Go 命令详解
- 开发工具推荐
- 依赖管理(dep 与 Go Modules)
- 调试工具 Delve
- 性能测试工具 PProf
- 单元测试和性能测试
2. 语言基础
- Hello World 入门
- 数组、切片、map、struct
- 常量和变量
- 流程控制
- 反射 reflect
- 双向链表
- 指针与内存
- new 和 make 的区别
- 定时器与类型系统
- interface 接口理解
- time 包用法
- iota 枚举
- sync.Map
- Go 泛型
3. 字符处理
- 字符类型判断
- 类型转换
- JSON 处理
- 字符串处理
- 正则表达式
- 中文与 Unicode 转换
4. 包(Package)
- 自定义包开发
- import 机制
- 模板引擎 (text/template)
- JWT 实现
- Kafka 操作 (sarama)
- Elasticsearch 操作
- 依赖注入工具 wire
- 随机数生成
- PDF/Excel/Word/Markdown 文件处理
- 图片合成 GIF
- 数据复制 copier
- 测试工具 gotests
5. 数据库
- MySQL (go-sql-driver/mysql)
- ORM 库 Xorm
- ORM 库 Gorm
- MongoDB 操作
6. Web 框架
- Gin 框架
- RPC 框架 rpcx
- 微服务框架 Hertz
7. Web 服务
- 搭建简单 Web 服务
- net/http 包详解
- HTTP 客户端实现
- Request/Cookie/Session 处理
- 日志处理
- 文件处理
- 中间件 Middleware
- 重定向 Redirect
- 文件下载
- 数据验证 validator
8. 缓存
- Redis 连接池
9. Go 高级编程
- 可变参数函数
- nil 深入理解
- 指针内存分配
- 堆栈原理
- Goroutine 并发
- GC 垃圾回收机制
- 单例模式
- 匿名函数和闭包
- Channel 实现原理
- Signal 信号处理
- 并发控制
- Context 包分析
- 类型比较
- 三个点(...)用法
- 跨域处理
- 加密解密算法
- 切片排序
- Panic 处理
- 精度计算
- 变量删除
10. 工具
- Socket 通信
- gRPC 服务端与客户端
- MySQL 表结构导出工具
- Excel 操作
11. 开源实例
- go-admin 后台管理系统
- vue-element-admin 动态菜单
- go-sso 单点登录系统
- gin websocket 一对一聊天
- go-websocket 分布式 IM
- go-vue-admin 后台管理系统
12. 其他
- Go 1.14 新特性
- map、切片、数组循环常见问题
学习建议
- 初学者: 从第 1、2 章开始,掌握基础语法和环境配置
- 进阶开发者: 重点阅读第 4、6、7 章,学习包开发和 Web 开发
- 高级开发者: 深入第 9 章,理解 Go 的并发模型和底层原理
参考资料
分享: