原文链接:Go 学习路线(2022)
Go 语言的发展越来越好了,很多大厂使用 Go 作为主要开发语言,也有很多人开始学习
Go,准备转 Go 开发。
那么,怎么学呢?
我发现,在互联网时代,学习的困难不是说没有资料,而是资料太多,不知道应该看哪个,从哪开始看。
所以,我整理了一份 Go 学习路线,这份学习路线不以数量取胜,努力做到精简。从基础到进阶,从理论到实战,一共包括以下几个内容:
- 入门教程
- 进阶教程
- 书籍推荐
- Web 开发
- 练手项目
- 实用工具
- 技术社区
这份学习路线还会不断优化更新,感兴趣的同学可以收藏这个链接:
github.com/yongxinz/go…,第一时间获取最新资源,如果能给个 star 那就太谢谢了。
入门教程
Go 语言中文网 - Go 语言入门教程
这套 Go 语言教程通俗易懂,深入浅出,既适合没有基础的读者快速入门,也适合工作多年的程序员查阅知识点。
菜鸟教程 - Go 语言教程
网站链接:www.runoob.com/go/go-tutor…
这个网站就不需要多介绍了吧,很多编程语言的入门教程都可以在这里找到。平时写代码过程中,某个知识点忘了,也可以到这里查。
W3Cshcool - Go 教程
网站链接:www.w3cschool.cn/go/
也是一个综合性的编程入门教程网站,资料很多,也都很基础。
Go by Example
网站链接:gobyexample.com/
很多代码示例,学习基础知识的时候很实用。可以一边看理论,一边参考这个网站写代码,效果会更好。
地鼠文档
网站链接:www.topgoer.cn/
可以说是 Go 编程的导航网站了,收藏了很多 Go 学习资料。包括网站,书籍,开源库,开源项目等。
进阶教程
mojotv 博客
网站链接:mojotv.cn/
很不错的博客,里面很多 Go 进阶文章,还有其他方面的技术文章,值得一读。我试图找了一下作者信息,但是没找到。
煎鱼 - Go 语言设计哲学
网站链接:golang3.eddycjy.com/
煎鱼大佬的博客,结合官方资料和作者自己的理解,梳理出的一系列 Go 语言设计相关的理念和哲学的文章。
面向信仰编程 - Go 语言设计与实现
网站链接:draveness.me/golang/
左神的博客,内容很深,想要成为大神的话,绝对要来看。
Go 夜读
网站链接:talkgo.org/
这是一个由众多资深 Gopher 组织的开源项目,主要是对 Go 源码进行解读。并且坚持开源,将相关资源都上传到了 GitHub。
书籍推荐
书单一共包含 10 本书,分为入门 5 本,进阶 5 本。我读过其中 7 本,另外 3 本虽然没读过,但也是网上推荐比较多的。
虽然分了入门和进阶,但是很多书中这两部分内容是都包含了的。大家看的时候可以根据自己的情况,先打好基础,再进行进阶。
有的书是开源的,可以直接在线阅读,有的有电子书,大家可以在这里 GitHub 找到下载方式。如果条件允许的话,买正版是最好的。
入门
《Go语言趣学指南》
本书是一本面向 Go 语言初学者的书,内容也比较浅,非常适合入门。
书中循序渐进地介绍了使用 Go 语言必需知道的知识,展示了非常多生动有趣的例子,并通过提供大量练习来加深读者对书中所述内容的理解。
《Go 入门指南》
这本书的英文名称叫《The Way to Go》,作者利用业余时间来进行翻译工作。在取得原作者 Ivo Balbaert 授权的情况下,将其开源。
《Go 语言编程》
本书以介绍 Go 语言特性为主,示例则尽量采用作者平常的实践,而不是一个没有太大实际意义的语法示范样例。通过与 C++ 和 Java 做一个横向比较,可以更直观看出其设计理念的差别。
作者许式伟为原金山 WPS 首席架构师、曾是盛大创新院研究员,目前是国内 Go 语言实践圈子公认的 Go 语言专家。参与本书写作的几位作者都是实际用 Go 语言开发的项目的开发人员,有较强的实战经验。
《Go 语言 101》
是一本着墨于 Go 语法语义以及运行时相关知识点的编程指导书(Go 1.17 就绪)。 此书旨在尽可能地帮助 Go 程序员更深更全面地理解 Go 语言。
此书也搜集了 Go 语言和 Go 编程中的很多细节,其中有一些在官方文档中从未提及。
此书同时适合 Go 初学者和有一定经验的 Go 程序员阅读。
在线阅读:gfw.go101.org/article/101…
《Go 语言程序设计》
本书由作者 Kernighan 和谷歌公司 Go 团队主管 Alan Donovan 联袂撰写,是学习 Go 语言的指南级书籍。内容翔实全面,涵盖了全部基础内容,值得一读。