mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4
1244 字
4 分钟
Golang 系列导读与资源汇总
2023-04-15

一、系列简介#

本系列从 Go Runtime 的底层机制出发,逐步探索 Go 的工程实践,最终形成一套完整的 Go 学习路径。

二、系列文章#

基础篇#

文章状态简介
Go 程序的启动已发布runtime 初始化与启动调用链
Go GMP 并发调度已发布goroutine 调度模型深度解析
Golang 整洁架构实践已发布Clean Architecture 在 Go 中的应用
Go 编译器与工具链已发布词法分析、SSA、优化、链接器

核心原理篇#

文章状态简介
Go GC 机制深度解析已发布GC 触发条件、四阶段流程与调优
Go 内存管理深度解析已发布TCMalloc、分级分配器、逃逸分析
Go 协程与通道:CSP 模型实现已发布channel 底层实现、select 调度、并发模式
Go 反射与接口原理已发布iface/eface、类型断言、反射三定律

工程实践篇#

文章状态简介
Go 错误处理最佳实践已发布error 接口设计、错误包装、recover
Go 泛型入门与进阶已发布类型参数、类型约束、泛型函数与结构体
Go 并发模式实战已发布Pipeline、Worker Pool、Context、errgroup
Go 测试与性能测试已发布单元测试、Benchmark、Mock、模糊测试
Go 性能优化实战已发布pprof 分析、GC 调优、逃逸分析

新特性篇#

文章状态简介
Go 1.23 iter 包已发布Seq/Seq2 迭代器协议、自定义迭代器
Go 1.22 for 循环变化已发布循环变量语义变化、闭包陷阱修复
Go sync 包深度解析已发布Mutex、RWMutex、WaitGroup、Pool、Map
Go Context 深度解析已发布取消信号、超时控制、值传递、HTTP 应用
Go 1.23 变化深度解析已发布iter 包、Timer 改进、PGO 优化
Go 1.24 变化深度解析已发布泛型别名、Swiss Tables、weak package
Go 1.25 变化深度解析已发布GOMAXPROCS 容器感知、Green Tea GC
Go 1.26 变化深度解析已发布Green Tea GC 默认、heap 随机化、go fix

三、学习路径建议#

第一阶段:深入 Go 底层(00-05)#

这部分是系列的核心,也是最能体现 Go 设计哲学的部分。从程序的启动入口开始,逐步揭开 runtime 的神秘面纱。01 的 GMP 模型让你理解协程调度的本质,05 的内存管理让你掌握资源分配策略,04 的垃圾回收让你了解自动内存管理的实现。这些知识不仅是面试的加分项,更是在线上排查性能问题的理论基础。

第二阶段:工程实践(06-12)#

有了底层知识的铺垫,我们转向实际开发。06-07 让你熟练使用 Go 的并发机制和类型系统,08-09 涵盖错误处理和泛型这些工程实践中的必备技能,10-12 则专注于并发模式、测试和性能优化。

推荐阅读顺序#

  1. 如果你是 Go 初学者,建议从 00 开始,按顺序阅读
  2. 如果你已经有一定经验,可以选择感兴趣的章节跳跃阅读
  3. 面试前可以重点复习 01(GMP)、04(GC)、05(内存管理)

四、系列特色#

理论与实践结合#

每一篇文章都不只是讲解原理,还包含大量可运行的代码示例。你可以在本地复现文章中的每一个实验,加深对概念的理解。

图表丰富#

复杂的机制配合 ASCII 图表和 Mermaid 流程图,让抽象的概念变得直观易懂。

深入源码#

对于核心机制,文章会带你阅读 Go 源码,理解底层实现的细节。

工程导向#

不仅讲是什么,更讲为什么,以及在实际项目中如何应用。

五、精选学习资源#

内部原理#

高性能编程#

工程实践#

官方文档#


参考#

支持与分享

如果这篇文章对你有帮助,欢迎支持作者或分享给更多人

Golang 系列导读与资源汇总
https://blog.souloss.com/posts/golang/go-series-guide/
作者
Souloss
发布于
2023-04-15
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时