DANDAN LEARN / Go
从语言核心到后端工程
以 Go 语言为主线:从数据结构底层、接口、GPM 调度、内存 GC 一路学到 MySQL、Redis、分布式与系统设计——融合 6 个开源仓库、去重互补,按主题重新排版为 21 个周次 + 番外篇。
Learning goals
Put principles into practice.
- 理解语言核心、并发与运行时相关概念
- 连接存储、中间件与后端设计
- 结合专题与问答梳理工程中的取舍
Who this is for
- 学习 Go 语言或准备后端工程实践的读者
Prerequisites
- 熟悉基本编程概念;中间件章节可在语言基础后阅读
A closer look
A few chapters to start with
Jump to a chapter 46 chapters
序言
Go 语言核心
w1 语言基础速览
Go 语言核心
w2 数据结构底层
Go 语言核心
w3 接口与组合
Go 语言核心
w4 并发模型入门
Go 语言核心
w5 GPM 调度器
Go 语言核心
w6 锁与同步原语
Go 语言核心
w7 channel 与 Context
Go 语言核心
w8 内存管理与 GC
Go 语言核心
w9 runtime 与底层机制
Go 语言核心
w10 Web 与网络编程
Go 语言核心
w11 工程化与常用包
存储与中间件
w12 MySQL
- 为什么索引用 B+ 树Member article
- 聚簇索引与非聚簇索引Member article
- 主键索引与非主键索引Member article
- 单列索引与联合索引的存储区别Member article
- 联合索引Member article
- 最左匹配原则Member article
- 索引失效的几种情况Member article
- 什么时候建索引,什么时候不建Member article
- MySQL 有哪几种索引Member article
- 高性能索引策略Member article
- 索引数据结构与优化Member article
- 索引下推(ICP)Member article
- 索引问答Member article
- 事务特性(ACID)Member article
- 四种事务隔离级别Member article
- MVCC 原理Member article
- 当前读与快照读Member article
- 脏读、不可重复读与幻读Member article
- 如何解决幻读Member article
- 事务怎么保证最终一致性Member article
- 事务什么场景下会失效Member article
- 记录锁、间隙锁与临键锁Member article
- 表锁和行锁机制Member article
- 悲观锁与乐观锁的区别及场景Member article
- 事务问答Member article
- 锁机制问答Member article
- binlog、redo log 与 undo logMember article
- 二阶段提交Member article
- 主从复制原理Member article
- 读写分离读不到数据怎么办Member article
- 分库分表与跨表查询Member article
- 百万到千万级数据量优化方案Member article
- 高并发下怎么做余额扣减Member article
- MyISAM 和 InnoDBMember article
- 数据库三范式Member article
- 查询语句的执行顺序Member article
- SQL 性能分析与优化Member article
- MySQL 基础知识问答Member article
- SQL 语句基础问答Member article
- 数据库优化问答Member article
- MySQL 面试题合集Member article
- ORM 高频题Member article
存储与中间件
w13 Redis
- 五大数据类型与底层结构Member article
- String 数据结构 SDSMember article
- Redis 哈希槽Member article
- 数据结构 StreamMember article
- 持久化:RDB 与 AOFMember article
- 持久化问答Member article
- Redis 概述问答Member article
- 过期键删除策略问答Member article
- Redis 事务问答Member article
- 主从复制与哨兵选举Member article
- 集群、主从与哨兵问答Member article
- 缓存穿透、击穿、雪崩Member article
- 缓存为什么要延时双删Member article
- 缓存问题问答Member article
- 内存淘汰与过期删除Member article
- Redlock 分布式锁原理Member article
- pipeline 与 Lua 脚本Member article
- redis 扩容方式和触发方式Member article
- 影响 Redis 性能的几点因素Member article
- redis 热点问题怎么解决Member article
- redis 如何判断 Key 是否存在Member article
- 如何处理网络延迟和网络异常Member article
- Redis 布隆过滤器Member article
- redis 如何实现延时队列Member article
- Redis 分区问答Member article
- 分布式问题问答Member article
存储与中间件
w14 消息队列与中间件
后端基石
w15 计算机网络
- 一次 HTTP 请求的全过程Member article
- 网络分层模型Member article
- TCP 三次握手与四次挥手Member article
- TCP 报文头部结构Member article
- TCP 可靠传输的保证Member article
- TCP 滑动窗口与重传机制Member article
- TCP 拥塞控制算法Member article
- TCP 的 keepaliveMember article
- TCP 的 TIME_WAITMember article
- TCP 粘包Member article
- TCP 与 UDP 的区别Member article
- UDP 如何保证尽量可靠Member article
- HTTP 1.0 / 1.1 / 2.0 的区别Member article
- HTTP 与 HTTPSMember article
- HTTP 状态码与方法Member article
- HTTP 协议中的 OPTIONSMember article
- HTTP/3 与 QUIC 协议Member article
- WebSocketMember article
- DNS 解析过程Member article
- ARP 协议工作原理Member article
- ping 协议Member article
- Linux 端口范围Member article
- SYN flood 与网络攻击防护Member article
- 限流策略Member article
- RPC 实现原理Member article
- 计算机网络高频问答Member article
后端基石
w16 操作系统
- 进程间通信方式Member article
- 进程与线程的同步方式Member article
- 虚拟内存与物理内存Member article
- 堆和栈访问效率哪个更高Member article
- 死锁:四个必要条件与预防Member article
- 内核态与用户态Member article
- 操作系统中的中断Member article
- 零拷贝技术Member article
- 孤儿进程与僵尸进程Member article
- Ctrl+C 与 kill 底层发生了什么Member article
- Linux 进程调度算法Member article
- Linux 常用命令Member article
- Linux 文件的权限Member article
- 自旋锁与互斥锁Member article
- 乐观锁与悲观锁(OS 视角)Member article
- LRU 算法及其实现Member article
- 红黑树Member article
- 如何设计一个哈希表Member article
- 指针和引用的区别Member article
- MD5 过程Member article
- 通过分析系统定位服务器问题Member article
- 操作系统高频问答Member article
后端基石
w17 分布式
后端基石
w18 微服务与高可用
- 微服务核心问题Member article
- 如何保证系统的可用性Member article
- 服务限流详解Member article
- 超时与重试详解Member article
- 冗余设计与高可用Member article
- 高并发系统设计Member article
- 性能测试入门Member article
- 架构设计方法论Member article
- IO 多路复用是什么Member article
- LSM-Tree 和 B+ Tree 的本质区别Member article
- 怎么理解可观测性Member article
- Trace 数据模型与 Span 设计Member article
- Metrics 数据模型Member article
- OpenTelemetry 实战:全链路接入Member article
场景·算法·面试
w19 系统设计与场景题
- 系统设计思路总纲Member article
- 实现秒杀功能Member article
- 超卖问题Member article
- 库存行拆分后的多单扣减Member article
- 评论系统设计Member article
- 关注关系场景怎么设计查询Member article
- Redis 缓存与 MySQL 数据一致性Member article
- 定时调度系统怎么准时触发Member article
- 短链接唯一 ID 设计的挑战Member article
- 实时输出最近一小时 TopK IPMember article
- 10 亿个数中找最大的 K 个Member article
- ES 监听 binlogMember article
- QPS 翻 10 倍的预案Member article
- 海量数据高频面试题Member article
- Go 场景高频题Member article
场景·算法·面试
w20 算法与编码
- 链表高频题(反转 / 环 / 合并)Member article
- 判断链表是否有环Member article
- 反转与合并有序链表Member article
- 树的遍历Member article
- 二叉树锯齿遍历Member article
- 图相关的算法题Member article
- 翻转字符串Member article
- 字符串替换问题Member article
- 判断字符串中字符是否全都不同Member article
- 判断两个字符串排序后是否一致Member article
- 验证回文串Member article
- 最长公共前缀Member article
- 第一个唯一字符Member article
- Sunday 字符串匹配Member article
- 连接字符串有几种方法Member article
- 数组交集Member article
- 最接近的三数之和Member article
- 滑动窗口最大值Member article
- 机器人坐标问题Member article
- 排序算法全解析Member article
- TopK:找出数组中最小的 K 个数Member article
- 接雨水Member article
- 时间和空间复杂度Member article
- 常见算法模板Member article
- 交替打印数字和字母Member article
- goroutine 和 channel 配合使用Member article
- 对已关闭的 chan 读写会怎样Member article
- 实现阻塞读且并发安全的 mapMember article
- 高并发下的锁与 map 读写Member article
- sync.Map 的用法Member article
- 每秒调用一次 proc 且程序不退出Member article
- 为 sync.WaitGroup 支持 WaitTimeoutMember article
- 多协程查询切片问题Member article
- http 包的内存泄漏Member article
- 并发题目测试Member article
- 字节跳动算法面试题Member article
- 代码编程(Go 实现)Member article
- 常见语法题目(一)Member article
- 常见语法题目(二)Member article
- 语法找错题Member article
- Golang 基础语法题目Member article
- Golang 基础题Member article
场景·算法·面试
w21 面试冲刺与简历
进阶专题(v2 增补)
w22 泛型编程(Go 1.18+)
进阶专题(v2 增补)
w23 测试与 TDD(上):基础
- 为什么写单元测试与 TDDMember article
- Hello, world:第一个测试Member article
- 整数与函数声明Member article
- 迭代与基准测试Member article
- 数组与切片:表驱动测试Member article
- 结构体、方法与接口Member article
- 指针与错误处理Member article
- Map 与依赖查找Member article
- 依赖注入Member article
- Mock 测试Member article
- 并发代码测试Member article
- select 同步异步流程Member article
- 反射Member article
- sync 包:WaitGroup 与 MutexMember article
- Context:管理长时任务Member article
- 基于属性的测试入门Member article
- math 包与 SVG 时钟Member article
- 读取文件Member article
- HTML 模板与验收测试Member article
- 泛型与测试Member article
- 用泛型重访集合:ReduceMember article
进阶专题(v2 增补)
w24 测试与 TDD(下):构建应用 + cgo 与汇编
- 构建 HTTP 服务器(TDD)Member article
- JSON、路由与嵌入Member article
- IO 与排序Member article
- 命令行与项目结构Member article
- time 包与调度Member article
- WebSocketsMember article
- 验收测试入门:优雅关停Member article
- 扩展验收测试Member article
- 不用 Mock 的测试:fakes 与 contractsMember article
- 重构清单Member article
- TDD 反模式Member article
- 自定义错误类型Member article
- os/exec 与可测试性Member article
- Context 感知的 io.ReaderMember article
- HTTP Handler 测试再探Member article
- cgo 快速入门Member article
- cgo 基础Member article
- cgo 类型转换Member article
- cgo 函数调用Member article
- cgo 内部机制Member article
- 实践:qsortMember article
- cgo 内存模型Member article
- C++ 类包装Member article
- 静态库与动态库Member article
- 编译与链接参数Member article
- 汇编基础:plan9 语法Member article
- 计算机体系结构Member article
- 常量与全局变量Member article
- 汇编函数Member article
- 控制流Member article
- 函数调用约定Member article
- 汇编技巧:Goroutine IDMember article
- 汇编调试Member article
进阶专题(v2 增补)
w25 项目实战(小项目代码集)
- 日志解析器 logparser(v1→v6 渐进演化)Member article
- 复古 LED 数字时钟Member article
- 弹跳球动画与蒙特卡洛并发模拟Member article
- 并发爬虫引擎(模块化架构)Member article
- gRPC 分布式爬虫(etcd 服务注册与发现)Member article
- 博客系统(beego MVC 全流程)Member article
- WebSocket 多人聊天室Member article
- 问答社区 Web 应用(gin + kafka + trie)Member article
- 手写日志库与 ini 配置解析器Member article
- Go 环境配置Member article
- 安装 GoMember article
- GOPATH 与工作区Member article
- Go 命令Member article
- 编辑器配置Member article
- Go 语言基础Member article
- 你好,GoMember article
- Go 基础Member article
- 流程和函数Member article
- struct 类型Member article
- 面向对象Member article
- interfaceMember article
- 并发入门Member article
- Web 基础Member article
- Go 的 http 包详解Member article
- 表单与交互Member article
- 表单验证Member article
- 防跨站脚本攻击Member article
- 防多次提交与上传文件Member article
- session 和数据存储Member article
- session 与 cookieMember article
- Go 实现 session 管理Member article
- session 劫持与防范Member article
- session 存储在 memcached/redisMember article
- 文本处理Member article
- JSON 处理Member article
- 正则表达式Member article
- 模板处理Member article
- 文件操作Member article
- 字符串处理Member article
- Socket 编程Member article
- WebSocketMember article
- RESTMember article
- RPCMember article
- 安全与加密Member article
- 预防 CSRF 攻击Member article
- 用 filter 验证表单输入Member article
- 加密和解密Member article
- SQL 注入与存储密码Member article
- 使用 MySQL 数据库Member article
- database/sql 接口Member article
- MySQL 建库建表Member article
- Go 的 CRUDMember article
- Go 的 ORMMember article
- NoSQL:MongoDB 与 RedisMember article
- MongoDB 使用Member article
- Redis 使用Member article
- Web 框架:beego 与 GinMember article
- beego 框架Member article
- Gin 框架Member article
- 项目实战:博客系统与聊天室Member article
- 开发博客项目Member article
- 实现聊天室Member article
- 开发 APIMember article
- 爬虫项目Member article
进阶专题(v2 增补)
w26 Go 核心谜题(Go核心36讲配套代码)
- 命令源码文件Member article
- 库源码文件Member article
- 程序实体(上)Member article
- 程序实体(中)Member article
- 程序实体(下)Member article
- 数组和切片Member article
- 字典的操作和约束Member article
- 通道的基本操作Member article
- 通道的高级玩法Member article
- 使用函数的正确姿势Member article
- 结构体及其方法Member article
- 接口类型的合理运用Member article
- 关于指针的有限操作Member article
- go 语句及其执行规则Member article
- if/for/switch 语句Member article
- 错误处理Member article
- panic/recover 与 deferMember article
- 测试的基本规则和流程Member article
- 更多的测试手法Member article
- sync.Mutex 与 sync.RWMutexMember article
- 条件变量 sync.CondMember article
- 原子操作Member article
- sync.WaitGroup 和 sync.OnceMember article
- context.Context 类型Member article
- 临时对象池 sync.PoolMember article
- 并发安全字典 sync.MapMember article
- unicode 与字符编码Member article
- strings 包Member article
- bytes 包Member article
- io 包Member article
- bufio 包Member article
- os 包Member article
- 访问网络服务Member article
- 基于 HTTP 协议的网络服务Member article
- 程序性能分析基础Member article
进阶专题(v2 增补)
w27 从零构建 Go 区块链
- 快速开始Member article
- 区块链账户:Secp256k1 密钥对与 Keccak256 地址Member article
- 区块链交易:签名、验证与防重放攻击Member article
- 区块链区块:创世块与区块存储Member article
- 区块链状态:确认态与待定态Member article
- Merkle 树与 Merkle 证明Member article
- 状态同步算法Member article
- 节点发现:P2P 网络的起点Member article
- 交易中继:并发消息中继设计Member article
- 区块提议者:PoA 共识Member article
- 事件流:领域事件多路复用Member article
- 区块链节点:整合所有组件Member article
进阶专题(v2 增补)
补充专题(v3 整理新增)
- Go 与其他语言对比问答(Java/C++/Python)Member article
- Go 语言进阶学习路径Member article
- Go 语言起源Member article
- Hello, World 的革命Member article
- 数组、字符串和切片(C 程序员视角)Member article
- 函数、方法和接口(C 程序员视角)Member article
- 内存分配(C 程序员视角)Member article
- Goroutine 与调度器(C 程序员视角)Member article
- 错误处理与 panic(C 程序员视角)Member article
- GPM 调度笔记Member article
- 调度器基础Member article
- Go 语言 Protobuf 使用指南Member article
- Protobuf v3 语法中文指南Member article
- Protobuf oneof/WrapValue/FieldMask 使用Member article
- RPC 原理与 Go RPCMember article
- gRPC 指南Member article
- pbgo:基于 Protobuf 的框架Member article
- RPC 补充说明与延伸阅读Member article
- Web 框架补充说明Member article
- 分布式补充说明Member article
- Content-Type 详解Member article
- MySQL 索引与 B+ 树Member article
- MySQL MVCC 笔记Member article
- PostgreSQL 与 MySQL 对比Member article
- TiDB 入门Member article
- 读写分离和分库分表详解Member article
- 数据库设计规范Member article
- 访问数据库Member article
- database/sql 接口Member article
- 使用 MySQL 数据库Member article
- 使用 SQLite 数据库Member article
- 使用 PostgreSQL 数据库Member article
- NoSQL 数据库操作Member article
- Redis 基础Member article
- Redis 数据结构Member article
- Redis RDB 持久化Member article
- AOF 与 RDB 面试题Member article
- Redis 6 Threaded I/OMember article
- Redis 主从复制Member article
- Redis 淘汰策略Member article
- 阿里官方 Redis 开发规范Member article
- RabbitMQ 详解Member article
- Kafka 知识体系Member article
- 程序员如何打好计算机领域基础Member article
- 一次搞定计算机网络Member article
- CDN 内容分发网络详解Member article
- Docker 基本概念解读Member article
- Docker 从入门到上手Member article
- Docker 学习笔记Member article
- 常见 Linux 面试问题Member article
- Redis 分布式锁与双重校验Member article
- 高并发系统设计Member article
- 秒杀场景库存扣减Member article
- 敏感词过滤方案总结(DFA/AC 自动机)Member article
- 图片/文字/动图敏感内容过滤Member article
- 信号量并发迁移千万级数据Member article
- 1 亿条 MySQL 数据迁移实践Member article
- 分类标签树设计Member article
- Web 框架与 ORM 高频问答Member article
- Go 风格指南Member article
- Go 开发规约Member article
- 项目开发规范Member article
- Code Review 规则Member article
- Git 分支管理与需求开发流程Member article
- Git 详解Member article
- Git 入门Member article
- GitHub 小技巧Member article
- RBAC 用户权限管理系统设计Member article
- OAuth2.0 授权原理与 Go 实现Member article
- 登录方案调研Member article
- 第三方登录方案Member article
- 对象存储 OSS 接入Member article
- 钉钉工作消息通知Member article
- Go 语法陷阱附录Member article
- Go 技术 gems 附录Member article
- 算法基础:复杂度分析Member article
- 算法基础:用空间换时间Member article
- 怎么高效刷 LeetCodeMember article
- LeetCode 算法提炼Member article
- Go 面试问答:数据定义Member article
- Go 面试问答:数组和切片Member article
- Go 面试问答:MapMember article
- Go 面试问答:interfaceMember article
- Go 面试问答:channelMember article
- Go 面试问答:WaitGroupMember article
- 后端通用面试题Member article
- 使用 GDB 调试Member article
- 测试小结Member article
- 单元测试进阶:网络、数据库、Mock 与打桩Member article
- 为何学习 CGOMember article
- Go 汇编补充说明Member article
- Hack:用汇编实现Member article
- 自定义路由器设计Member article
- 实现博客的增删改Member article
- 扩展 Web 框架Member article
- 静态文件支持Member article
- Session 支持Member article
- 表单及验证支持Member article
- 用户认证Member article
- 多语言支持Member article
- pprof 支持Member article
- 扩展小结Member article
- 附录:参考资料Member article
- Go 的 http 包详解Member article
- 字符串处理Member article
- Go 搭建一个 Web 服务器Member article
- Go 如何使得 Web 工作Member article
- 处理表单的输入Member article
- 处理文件上传Member article
- 预防 session 劫持Member article
- Web 服务概览Member article
- 存储密码Member article
- 加密和解密数据Member article
- 网站错误处理Member article
- 备份和恢复Member article
- 接口与 Web 服务Member article
- 环境配置小结Member article
- 语言基础小结Member article
- Web 基础小结Member article
- 表单小结Member article
- Web 服务小结Member article
- 安全小结Member article
- 部署小结Member article
- 文本处理小结Member article
- 数据库小结Member article
- 国际化小结Member article
进阶专题(v2 增补)
w28 性能调优工坊(high-performance-go)
- 概览:性能优化的度量与分析Member article
- benchmark 基准测试Member article
- pprof 性能分析Member article
- 空结构体Member article
- 字符串拼接Member article
- 反射Member article
- 内存对齐Member article
- slice 预分配Member article
- range 陷阱Member article
- goroutine 退出Member article
- sync.CondMember article
- sync.OnceMember article
- goroutine 超时Member article
- 并发控制Member article
- sync.PoolMember article
- 互斥锁Member article
- 逃逸分析Member article
- 死代码消除Member article
- 减小对象大小Member article
- 数组与切片陷阱Member article
进阶专题(v2 增补)
w29 Web 框架设计(GoBook)
- 学习路线Member article
- Beego 框架分析Member article
- GIN 框架分析Member article
- Iris 框架分析Member article
- Echo 框架分析Member article
- Server 详解与面试要点Member article
- 路由树:Beego&GIN&Echo 实现总结Member article
- 全静态匹配Member article
- TDD 起步Member article
- 静态匹配测试Member article
- 路由查找Member article
- 集成 ServerMember article
- 通配符匹配:注册Member article
- 查找与测试Member article
- 参数路径:注册查找Member article
- 校验Member article
- 参数值Member article
- 总结与面试Member article
- Context 简介Member article
- Beego Context 设计Member article
- Gin Context 设计Member article
- Echo/Iris Context 设计Member article
- 输入输出总结Member article
- Body 输入Member article
- 表单输入Member article
- 查询/路径参数Member article
- 处理输出Member article
- 总结与面试Member article
- AOP 简介与框架设计Member article
- AOP 设计方案 MiddlewareMember article
- AccessLogMember article
- Trace 与 OpenTelemetryMember article
- OpenTelemetry 测试Member article
- 总结Member article
- Prometheus 详解Member article
- Prometheus 实战Member article
- 错误页面Member article
- panic 恢复Member article
- 总结与面试Member article
- 附录:责任链模式Member article
- 生成器模式Member article
- 函数选项模式Member article
- 课后复习:ServerMember article
- RouteMember article
- AOPMember article
进阶专题(v2 增补)
w30 Go 设计思考(eddycjy 煎鱼)
- Go 环境与安装Member article
- Go 与 Golang 的区别Member article
- Less is MoreMember article
- 入门起步Member article
- new 函数Member article
- 类型后置声明Member article
- 运算符Member article
- 左大括号Member article
- nil 函数Member article
- nil 与 nil 不相等Member article
- 对象Member article
- 并发 map/sliceMember article
- 重复 mutexMember article
- context 取消Member article
- 循环导入Member article
- 错误处理Member article
- errors.WithMember article
- 函数重载与默认参数Member article
- 泛型历史Member article
- 泛型Member article
- 泛型包Member article
- 注解Member article
进阶专题(v2 增补)
w31 算法模板与套路(algorithm-pattern + labuladong)
- Go 语言基础Member article
- 算法快速入门Member article
- 二叉树Member article
- 链表Member article
- 栈和队列Member article
- 二进制操作Member article
- 二分搜索Member article
- 排序算法Member article
- 动态规划Member article
- 递归思维Member article
- 滑动窗口Member article
- 二叉搜索树Member article
- 回溯法Member article
- 学习算法和刷题的框架思维Member article
- 动态规划解题套路框架Member article
- 回溯算法解题套路框架Member article
- BFS 算法套路框架Member article
- 双指针技巧套路框架Member article
- 二分搜索算法框架Member article
- 滑动窗口算法框架Member article
进阶专题(v2 增补)
w32 7 天从零实现系列(geektutu)
进阶专题(v2 增补)
w33 更多项目实战
进阶专题(v2 增补)
w35 生产级开源项目导读
进阶专题(v2 增补)
w36 Q1mi 项目套件(工程化成长路径)
进阶专题(v2 增补)
w37 实战课程导读(liwenzhou.com)
进阶专题(v2 增补)
w38–w40 AI Agent 工程系列(系统教程)
- Claude Agent SDK Go 版系统教程:从进程模型到子 AgentMember article
- Coding Agent 系统教程:Reasonix、OpenCodeReview 与 claw-codeMember article
- Agent 与 LLM 生态学习地图:13 个必读开源项目Member article
- 从零实现 AI Coding Agent:Go 版 10 阶段系统教程Member article
- nanoMuse 系统教程:个人 Agent 的多端架构与 GUI 操作Member article
- MuseBot 系统教程:把 LLM 接入九大 IM 平台Member article
- HiRoute 系统教程:长时程 Agent 的模型路由引擎Member article
进阶专题(v2 增补)
w34 微服务商城实战(Kratos Shop)
进阶专题(v2 增补)
Go Web Examples(可运行样例)
进阶专题(v2 增补)
Effective Go(中英双语)
进阶专题(v2 增补)
极客面试(geektutu)
进阶专题(v2 增补)
《Go 语言设计与实现》示例代码
进阶专题(v2 增补)
深度补充(对照已有周次的增量内容)
- 代码元素与语法细节Member article
- 基本类型与值字面量Member article
- 常量与变量Member article
- 关键字与标识符Member article
- 代码块与作用域Member article
- 控制流程Member article
- 控制流程扩展Member article
- 运算符Member article
- 表达式与语句Member article
- 求值顺序Member article
- 断行规则Member article
- 函数声明与调用Member article
- 函数值与闭包Member article
- 非官方 FAQMember article
- 字符串细节Member article
- 结构体细节Member article
- 容器类型Member article
- 值部件Member article
- 值复制成本Member article
- 值转换、赋值与比较Member article
- 指针Member article
- nil 详解Member article
- unsafe 与非类型安全指针Member article
- 边界检查消除Member article
- 内存布局Member article
- 内存块Member article
- 接口细节Member article
- 方法细节Member article
- 类型嵌入Member article
- 类型系统概览Member article
- 反射Member article
- 通道规则详解Member article
- 如何优雅地关闭通道Member article
- 通道用例大全Member article
- 并发同步概览Member article
- 并发同步扩展Member article
- 原子操作Member article
- 并发常见错误Member article
- Go 内存模型Member article
- 内存泄漏场景Member article
- defer 细节Member article
- panic 与 recoverMember article
- panic 详解(新版)Member article
- panic 用例大全Member article
- Go 工具链Member article
- 包与导入Member article
- 官方工具Member article
- golds 文档工具Member article
- GMP 调度器原理及设计思想Member article
- 逃逸分析:变量何时栈何时堆Member article
- make 与 new 的区别Member article
- 三色标记+混合写屏障 GC 全分析Member article
- 调试 bug 与性能问题的实践方法Member article
- Defer 必掌握的 7 个知识点Member article
- 面向对象思维理解 interfaceMember article
- 精通 Go modulesMember article
- 依赖管理进阶:internal 包、私有依赖与工作区模式Member article
- 进程线程与协程的区别Member article
- Go 是否可以无限 goMember article
- Worker 工作池设计Member article
- 流、IO 操作、阻塞与 epollMember article
- 单点 Server 的 N 种并发模型Member article
- TCP TIME_WAIT 详解Member article
- 分布式从 ACID、CAP、BASE 推进Member article
- 创建型模式(7 种实现)Member article
- 结构型模式(7 种实现)Member article
- 行为型与并发模式(13 种实现)Member article
- 设计模式代码集(EasySJMS 配套)Member article
- wire 依赖注入与 cron 定时任务Member article
- 基础语法样例集(24 例)Member article
- 并发样例集(18 例)Member article
- 标准库样例集(30 例)Member article
- 网络与进程样例集(9 例)Member article
- 并发编程代码案例集(Worker Pool/信号量/Context Bug/泄漏检测)Member article
- gRPC 实践:TCP + gRPC + Web serverMember article
- 八股:GMPMember article
- 八股:goroutineMember article
- 八股:channelMember article
- 八股:mutexMember article
- 八股:mapMember article
- 八股:sliceMember article
- 八股:contextMember article
- 八股:逃逸分析Member article
- 八股:rangeMember article
- 八股:make 与 newMember article
- GC 算法对比Member article
- G1 收集器Member article
- RPC 入门Member article
- Protobuf 入门Member article
- net/rpc 剖析Member article
- gRPC 入门Member article
- gRPC 进阶Member article
- gRPC 扩展Member article
- grpcurlMember article
- Web 框架基础Member article
- 路由Member article
- 中间件Member article
- 输入校验Member article
- 数据库Member article
- 限流Member article
- Web 项目布局Member article
- 灰度发布Member article
- 分布式 IDMember article
- 分布式锁Member article
- 延时任务Member article
- 搜索引擎Member article
- 负载均衡Member article
- 配置中心Member article
- 分布式爬虫Member article
番外篇
Reading and learning support
Forewords are public. Other chapters require access to the column or the whole library.
Overview reviewed on