完整的 Go 语言入门路径
保姆级的基础语法教学
4 个实战小项目带你落地 Go 语言
Go 语言常见坑点和避坑指南
课程介绍
作为从事云原生必备的语言、腾讯、字节跳动等大厂的“高薪”宠儿,Go 在这些年真是吸引了不少开发者的目光。它简洁而高效,兼具“速度感”和“力量感”,相信你也曾在某个瞬间为它的魅力折服。
不过,很多刚开始学习 Go 语言的开发者,很难一下子找到高效的学习路径。或者说,经过一段时间学习后,对 Go 的理解也只是不上不下的“半桶水”。究其原因,无外乎这几点:
缺乏认真的评估,从“入门”到“放弃”,平白浪费自己的精力;
不会动手甚至不敢动手,学习只是“纸上谈兵”;
用其他语言的思维学 Go,最后“捡了芝麻,丢了西瓜”;
缺乏设计意识,永远停在“hello, world”的世界里。
到最后,基础没打牢,项目上不去,这怎么行?因此,我们请来了资深架构师、技术博客 tonybai.com 的博主 Tony Bai 老师。他从 2011 年就开始关注 Go 语言了,对语言的理解非常深刻。
在这个课程中,Tony Bai 老师会用“三个诀窍和五个阶段”,带给你一条系统、完整的 Go 语言入门路径。你会了解到 Go 语言一些独特的创新,快速掌握 Go 的各类语法特性。同时,这门课“语法 + 实战”的结合能让你快速上手开发 Go 程序,其中的高手洞见也能让你提前“闪避”坑点。
课程目录
01丨前世今生:你不得不了解的Go的历史和现状.pdf
02丨拒绝“HelloandBye”:Go语言的设计哲学是怎么一回事?.pdf
03丨配好环境:选择一种最适合你的Go安装方法.pdf
04|初窥门径:一个Go程序的结构是怎样的?.pdf
05|标准先行:Go项目的布局标准是什么?.pdf
06|构建模式:Go是怎么解决包依赖管理问题的?.pdf
07丨构建模式:GoModule的6类常规操作.pdf
08丨入口函数与包初始化:搞清Go程序的执行次序.pdf
09丨即学即练:构建一个Web服务就是这么简单.pdf
10丨变量声明:静态语言有别于动态语言的重要特征.pdf
11丨代码块与作用域:如何保证变量不会被遮蔽?.pdf
12丨基本数据类型:Go原生支持的数值类型有哪些?.pdf
13丨基本数据类型:为什么Go要原生支持字符串类型?.pdf
14丨常量:Go在“常量”设计上的创新有哪些?.pdf
15丨同构复合类型:从定长数组到变长切片.pdf
16丨复合数据类型:原生map类型的实现机制是怎样的?.pdf
17丨复合数据类型:用结构体建立对真实世界的抽象.pdf
18丨控制结构:if的“快乐路径”原则.pdf
19丨控制结构:Go的for循环,仅此一种.pdf
20丨控制结构:Go中的switch语句有哪些变化?.pdf
21丨函数:请叫我“一等公民”.pdf
22丨函数:怎么结合多返回值进行错误处理?.pdf
23丨函数:怎么让函数更简洁健壮?.pdf
24丨方法:理解“方法”的本质.pdf
25丨方法:方法集合与如何选择receiver类型?.pdf
26丨方法:如何用类型嵌入模拟实现“继承”?.pdf
27丨即学即练:跟踪函数调用链,理解代码更直观.pdf
28丨接口:接口即契约.pdf
29丨接口:为什么nil接口不等于nil?.pdf
30丨接口:Go中最强大的魔法.pdf
31丨并发:Go的并发方案实现方案是怎样的?.pdf
32丨并发:聊聊Goroutine调度器的原理.pdf
33|并发:小channel中蕴含大智慧.pdf
34|并发:如何使用共享变量?.pdf
35丨即学即练:如何实现一个轻量级线程池?.pdf
35丨加餐丨如何拉取私有的GoModule?.pdf
36丨打稳根基:怎么实现一个TCP服务器?(上).pdf
37丨代码操练:怎么实现一个TCP服务器?(中).pdf
38丨成果优化:怎么实现一个TCP服务器?(下).pdf
曹春晖丨聊聊Go语言的GC实现.pdf
大咖助阵丨大明:Go泛型,泛了,但没有完全泛.pdf
大咖助阵丨海纳:聊聊语言中的类型系统与泛型.pdf
加餐丨聊聊Go1.pdf
加餐丨聊聊最近大热的Go泛型.pdf
加餐丨他山之石:学习Go你还可以参考什么?.pdf
加餐丨作为GoModule的作者,你应该知道的几件事.pdf
结束语丨和你一起迎接Go的黄金十年.pdf
开篇词丨这样入门Go,才能少走弯路.pdf
孔令飞丨从小白到“老鸟”:我的Go语言进阶之路.pdf
徐祥曦丨从销售到分布式存储工程师:我与Go的故事.pdf
叶剑峰丨Go语言中常用的那些代码优化点.pdf
用户故事丨罗杰:我的Go语言学习之路.pdf