Go 阅读清单
此项目是一份关于Go的中文博客文章的阅读列表。 灵感来源于:gopher-reading-list。
如果有新的文章也欢迎提交PR或issue。此项目只包含文章标题和链接,不会转载文章内容。
由于能力、精力有限,提交的文章可能无法一一甄别,对于文章中有遗漏或笔误的地方,可以发起issue讨论。
为避免列表过大,对于系列文章,建议只提交系列文章的目录。
此列表将分为以下几个部分:
基础
基础
- Go 语言结构
- Go 中常用的数据结构介绍
- 十条有用的 Go 技术
- fmt 如何进行格式化?
- 像牛人一样改进你的Go代码
- Go 结构体和方法
- Go 接口
- Go编程基础
- Go Slice 最大容量大小是怎么来的
- Go 新手容易犯的三个致命错误
- Golang slice 操作
- Golang 中的slice操作
- Go Struct超详细讲解
- 谈谈Go语言字符串
代码组织与风格
- Uber Go语言编码规范
- 如何编写 Go 代码
- 编写可维护 Go 语言代码建议
- Go 编码技巧分享
- Go 语言错误处理的推荐方案
- Go 语言如何解决代码耦合
- Go开发中一些有用的模式
- 编写和优化Go代码
- Go错误处理最佳实践
- Google:12 条 Golang 最佳实践
- 以层的方式而不是组的方式进行包管理
Web
并发
Go Modules
中级
代码设计
并发
- 通过插图学习 Go 的并发
- Go 并发编程基础
- Go 并发调用的超时处理
- Golang并发:再也不愁选channel还是选锁
- 总结了才知道,原来channel有这么多用法!
- Go并发编程中的那些事
- Go并发机制
测试
Web
- 如何使用 Go 语言解析 JSON
- Go 语言标准库 text/template 包深入浅出
- Golang中Context的使用场景
- Go 语言中关于JSON的整理
- 浅谈 Go 标准库对 JSON 的处理效率
- 专业 Golang HTTP 服务器
杂项
- Go 语言HTTP/2探险之旅
- 初窥Go module
- Go 反射
- Golang 之协程详解
- 使goroutine同步的方法总结
- Golang通道的无阻塞读写
- 使用 Golang Timer 的正确方式
- 理解Go语言的nil
- Go 语言闭包详解
高级
性能
- Golang 大杀器之性能剖析
- 使用 LLDB 调试 Go 程序
- gops - Go 程序诊断分析工具
- Go 性能优化- For Range 性能研究
- Go 减小gc压力、避免内存泄漏小tips
- Go 调优神器trace介绍
- 在 Go 中恰到好处的内存对齐
- Golang gc 优化思路以及实例分析
- 高性能 Go 服务的内存优化(译)
- 大堆栈带来的高GC开销的问题
- 深入浅出 Go trace
- Go语言中[]byte和string类型相互转换时的性能分析和优化
- Go 应用优化指北