Go后端学习路线
前言#
如果你是零基础小白,通常不建议一上来就学 Go,更建议先学 Python,或者在特定目标下学 C/C++。
原因:Python 更适合入门;C/C++可以帮助你理解底层,同时也是大多数学校的第一门语言。
接下来我来给大家介绍一下Go语言的学习路线,仅针对Go Web后端,过多的方向不涉及。为作者本人的学习路线,仅供参考。
阶段0:基础知识#
408:数据结构、操作系统、计算机网络、计算机组成原理(不重要)
这些都是学校的课程,虽然不要求你学的多好,但还是希望可以有一些基础了解,帮助你可以更好的理解,不希望是纯小白,还是要对计算机整体体系有一些了解,如果是纯小白,也不必花大量的时间去学习这些,其实感觉工作中用的不是很多,大概了解下,后面背背八股即可。
这里推荐视频:计算机科学速成课

阶段1:学习Go语言#
可以看官方文档或Go中文文档来学习,也可以看B站视频学习(这里推荐刘丹冰老师)。
同时可以刷一些算法题或是写一些简单的demo如计算器等来熟悉Go语法。
刘丹冰老师的课程后面也带着写了一个IM聊天系统,大概400-500行左右,可作为练习。

阶段2:学习Web框架#
最火也是最简单的当属Gin+Gorm了,由于Go相关资料确实很少,所以依旧是两种方式,看官方文档或中文文档,或者看B站视频,这边建议七米老师,课程最后会带着你做一个基础的web项目,是一个比较经典的TodoList。

阶段3:学习数据库#
学习MySQL即可,整体资料比较多,B站也有大量视频,但很多都很冗长,上来就是30个小时,就很劝退(作者还真看完了),说真的,确实讲的很细,方方面面都讲了,但是其实并没用,其实用不太到,然后慢慢就忘完了,所以不如学习下增删改查就好,以后有什么问题再去学习。其实工作中也不涉及那么多,但是会考,背背八股就好。
这里推荐视频:

阶段4:熟练掌握Web开发#
其实我个人是不建议一直学的,我更建议多做,或者边做边学,这样效率最好,否则只学很容易忘,所以可以不着急赶进度,可以先停一下,根据自己学习的知识去尝试做一个练手项目,项目不要求复杂功能,有基础的业务和增删改查即可,毕竟是练手项目。
阶段5:中间件的学习#
几年前,学完上述就可以找到工作了,现在就显的很单薄,所以建议学习一些中间件并添加到项目中。
倒也不用学太多,这里推荐两个中间件:Redis和消息队列
Redis视频推荐:

消息队列可以学习Kafka和RabbitMQ,我学的RabbitMQ,因为简单。

阶段6:项目 (下篇详解)#
因为简历中要有项目,但涉及的有些多,我会在下个视频,如何到实习中详解。
阶段7:八股(下篇详解)#
填一下上面的坑,否则即使你上述都会了,面试官问你你也答不上。
阶段8:算法 (下篇详解)#
大厂比较看重,小厂基本不怎么问。
阶段9:其他#
你还要学习一些工具,但不是必须。
git肯定是要会的,你也可以把项目放到github,并在简历放上链接,反正大概率不减分,证明是你自己实打实做的,如果高星就很加分了。作者虽然star很少,但也因为这个获得了一些机会。

postman也要会,毕竟你自己写项目,没有前端界面,就要测试接口,所以可以学习下,也很简单。
docker也可以学下,方便你部署项目,因为你的项目如果部署了,且有一定访问量,那是相当加分的。
测试工具也可以学习下,可以测试下你的项目,说你哪里优化了,性能提升了多少。写简历上会显得真实些,也可以体现能力。
说在后面#
其实大多数的学习,倒不用一下子全部学透彻,其实大概了解下,然后边做,遇到问题再学就行,通过AI来学习也是也是一个效率比较高的方式,做完上述,找到一个实习肯定是不成问题的,但是上述仅是一个Golang后端的学习路线,相当于一个敲门砖,至于后续要学什么,走什么方向,可以根据网上的招聘信息来学,也可以去工作后看人家需要什么再去学,最后就是祝大家顺利。
同时我也创了一个Go语言交流群,因为Go相关内容现在还是比较少的,后续会分享一些资料,当然更多的是大家去一起讨论交流。大家可以私信我进入。
