网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
图书
入门看这个:《Go语言学习笔记》,跟着书籍多敲敲代码,Go语言相对C++,Java来说,简单很多。
视频
入门阶段我非常推荐这套免费教程:
不管是内容,还是讲解方式,还是深入浅出的讲解风格都深得我心,也是我学习的榜样。
网站资源
1. 菜鸟教程
- 简介:如果你觉得看视频很浪费时间,强烈建议你跟着菜鸟教程动手实践。
2. go语言中文网
- 简介:这个就不多说了,学Go的应该都知道
3. Go By Example 中文版
- 简介:使用代码示例来学习 Go 语言。
4. Go 面试题
- 简介:也是使用代码示例来讲解 Go,非常适合用来准备面试。
5. 跟着单元测试学习 Go
- 简介:非常见名知意了,也有中文版的哦~
Go轻量级开源项目
学完基础,建议你上手几个基础项目:
1. starcharts
- 简介:项目的功能是生成 Github 上面的项目的 star 趋势图,核心代码不多,用来练手很合适。
2. gorched
- 简介:使用 Go 写的一个小游戏。
3. pacgo
- 简介:也是使用 Go 写的一个小游戏,每一步都有详细的描述和代码实现。
4. wechat-go
- 简介:微信 web 版 API 的 Go 实现,模拟微信网页版的登录/联系人/消息收发等功能。
我准备脱敏之前用Go开发的类似支付宝集五福项目,开源出来,欢迎大家催更。
2. Web 开发
书籍
基础知识掌握之后,可以上手做一些 web 应用,进一步了解更多的 Go 语言相关框架以及生产环境中的常用中间件,推荐书籍《Go Web 编程》。
框架
了解了web基础知识后可以学习下 web 框架 Gin、GoFrame:两个框架都比较的流行,选择其中一个其实就可以了。
GoFrame相关
- 官方文档:
- 掘金GoFrame学习专栏
Gin相关
- geektutu Gin 简明教程:https://geektutu.com/post/quick-go-gin.html
- Gorm指南:https://gorm.io/zh_CN/docs/index.html
关于学习框架这件事,都首先推荐看官方文档。不用去找其他的书籍,没有比官方文档更有价值的资料了。
Go web项目
推荐几个使用 Go 构建的基础 web 项目:
1.gin-vue-admin
- 简介:使用 Gin 框架构建的后台管理系统。
2.ferry
- 简介:基于 Gin + Vue + Element UI 前后端分离的工单系统。
3. go-admin
- 简介:Gin + Vue + Element UI 的前后端分离权限管理系统。
我的经验
对于 web 项目的学习,有些朋友觉得很复杂,有畏难心理,不知道怎么下手。
我的建议是:多动手,可以在本地把项目跑起来,然后断点调试一个 HTTP 请求的整体流程,搞懂了一个接口,其他的大同小异。
编程是实践科学,要有工匠精神,不要畏难畏烦,动手实践才是王道。
这里推荐一下我的视频教程:用敏捷开发和“抄作业”的思想,快速上手Go实战项目
视频地址:https://www.bilibili.com/video/BV1bt4y1K7Lj/
3. Go 语言进阶
书籍
基础知识掌握后需要了解一下Go的底层原理和高级用法啦(面试造火箭必备)
这里推荐书籍《Go 程序设计语言》(号称 Go 圣经)、《Go 语言高级编程》、《Go并发编程实战》。
网站资源
1.《Go 语言圣经》
- 简介:go圣经是值得反复阅读的
2.《Go 语言高级编程》
- 简介:Go语言专家曹大的书,深入到了Go的汇编和很多高级用法
3.《Go专家编程》
- 简介:理解Go中常见数据结构的底层,建议大家重点去看Channel,Mutex,Map
4.《Go语言设计与实现》
- 简介:了解go的编译机制,goroutine调度机制,垃圾回收机制
- PS:某否技术平台最近送了我这本书,正在拜读中,看了前几篇,已经被作者的严谨折服了。
我的经验
因为工作太忙的原因,已经很长时间没有看纸质书了,只是根据自己的需求去查官方文档,查免费教程。
当我最近阅读了一段时间纸质书之后,发现读书的体验真的很好,读进去就不会浮躁,理解问题可以深入好多。
所以这篇文章都是先给大家推荐书籍、再推荐学习网站、再推荐项目。
进阶Go项目
想要进一步巩固所学知识,这里推荐几个比较进阶的项目
1. goframe-shop-v2
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
]
[外链图片转存中…(img-BDreNBBO-1715730307350)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新