最用心的Go学习资料和学习建议,可能没有之一。怎么学Go快?有哪些教程建议看?学到什么程度能去找工作?我觉得这个问题的关键要看你的目标是什么?一定要结合你自己的情况去考虑这个事情。
最近不少读者私信我学Go的问题,基本都是“怎么学Go快?有哪些教程建议看?学到什么程度能去找工作?”。
我觉得这个问题的关键要看你的目标是什么?
是想快速学习之后找到一份工作就可以?还是本来有其他语言的基础,想通过学Go提高自己,进而找到一份更好的工作。
同样也要结合自己的过往经历,比如你是在校生,还是刚工作不久的朋友,还是混迹职场多年朋友。
或者你是运维转Go,还是Java转Go,PHP或者Python转Go等等。
我都是在充分了解大家过往的经历后,给每位读者提建议的。
聊得人多了也就有了能“抽象”出来的东西,整理一篇文章,分享给大家。
我之前给大家分享的《Go学习路线图》,是结合我的经历,适合于有一定基础,想快速学习Go,尽快找到工作的朋友。
如果你有充足的时间去学习(或者你想谋求一个更好的工作),建议大家按照这篇文章的顺序,夯实自己的基础,多做项目,进而实现自己的目标。
入门看这个:《Go语言学习笔记》,跟着书籍多敲敲代码,Go语言相对C++,Java来说,简单很多。
入门阶段我非常推荐这套免费教程:
不管是内容,还是讲解方式,还是深入浅出的讲解风格都深得我心,也是我学习的榜样。
学完基础,建议你上手几个基础项目:
我准备脱敏之前用Go开发的类似支付宝集五福项目,开源出来,欢迎大家催更。
基础知识掌握之后,可以上手做一些 web 应用,进一步了解更多的 Go 语言相关框架以及生产环境中的常用中间件,推荐书籍《Go Web 编程》。
了解了web基础知识后可以学习下 web 框架 Gin、GoFrame:两个框架都比较的流行,选择其中一个其实就可以了。
官方文档:
掘金GoFrame学习专栏
geektutu Gin 简明教程:https://geektutu.com/post/quick-go-gin.html
Gorm指南:https://gorm.io/zh_CN/docs/index.html
关于学习框架这件事,都首先推荐看官方文档。不用去找其他的书籍,没有比官方文档更有价值的资料了。
推荐几个使用 Go 构建的基础 web 项目:
对于 web 项目的学习,有些朋友觉得很复杂,有畏难心理,不知道怎么下手。
我的建议是:多动手,可以在本地把项目跑起来,然后断点调试一个 HTTP 请求的整体流程,搞懂了一个接口,其他的大同小异。
编程是实践科学,要有工匠精神,不要畏难畏烦,动手实践才是王道。
这里推荐一下我的视频教程:用敏捷开发和“抄作业”的思想,快速上手Go实战项目
视频地址:https://www.bilibili.com/video/BV1bt4y1K7Lj/
基础知识掌握后需要了解一下Go的底层原理和高级用法啦(面试造火箭必备)
这里推荐书籍《Go 程序设计语言》(号称 Go 圣经)、《Go 语言高级编程》、《Go并发编程实战》。
因为工作太忙的原因,已经很长时间没有看纸质书了,只是根据自己的需求去查官方文档,查免费教程。
当我最近阅读了一段时间纸质书之后,发现读书的体验真的很好,读进去就不会浮躁,理解问题可以深入好多。
所以这篇文章都是先给大家推荐书籍、再推荐学习网站、再推荐项目。
想要进一步巩固所学知识,这里推荐几个比较进阶的项目
目前 Go 在微服务中的应用非常广泛,微服务云原生是一个太庞大的话题,你不可能把每一个核心的问题都能够搞清楚。
或许只能在公司的具体的微服务生产环境中,才能够对相关的概念有更加深刻的体会,闭门造车是学不会微服务云原生的。
正如前段时间帮知识星球中大三星友答疑一样,老师留的毕设是Go微服务云原生相关,他不知道从何学起。
我们给的建议是:首先要明确是基于云原生体系做应用开发,还是做云原生的基础建设,然后有针对性的去学习,感兴趣的朋友可以加入星球查看我们的总结。
推荐 Go 语言的微服务框架 GoKit、GoMicro、go-zero、kratos,可以随便选择一个,理解其基本的用法、设计等等。
其中 go-zero 和 kratos 是国内开源的,因此都有比较详细的中文文档。
我个人建议学习go-zero,跟着快速上手和简单例子写一遍,不仅可以熟悉CRUD,还能了解Go中优秀的框架设计思想,微服务确实是未来的趋势
如果你上面都掌握的不错了,就可以着手准备找一份「好工作」了。
如果需要简历优化和求职指导可以微信私信我。
如果你想尽快找到工作,对薪资和企业规模要求没有那么高,基本掌握下面这些就可以去约面试了:
上面提到的这些,我认为能实现「尽快找到工作」的目标。
但是要实现找到好工作的目标,除了技术本身,还需要结合你过往的经历,把你过往的经历转化成自己的优势、做更多的商业项目、有针对性的准备意向公司面试等等。
如何找到好工作,也是我最近思考的问题,欢迎有这方面思考的朋友私信我,交流讨论。
因为C站不支持添加太多外链,需要上述资源链接的朋友可以加入我在CSDN创建的社区:
点这里—>加入高质量学编程专属群👏👏👏
最后,如果你觉得这期内容不错的话,一定要三连支持一波。
转发给更多需要的人,让更多的人看到,就是对我最大的鼓励。