“小众”的编程语言的Go语言在今年2月成功挤进TOIBE排行榜前10,3月稳居第8名。从最低时的第122名,到现在第8名,Go 的身影越来越清晰。
其实它早已被广泛应用于云计算、大数据、区块链、微服务、游戏开发等领域,因而也有越来越多的人学习、转行Go 语言。
今天就整理一下关于Go语言,零基础应该如何学习,有需要的朋友可以参考一下。
一、Go 基础
01 基础路线
- Go开发环境搭建
- Go项目结构
- Go基础语法入门
- 冯诺依曼体系结构和程序关系
- Go语言命名规范
- 运算符和优先级
- if和switch分支
- for循环
- continue
- break、goto和Label
- 转义字符和字符串
- 字符串格式化
- 线性表原理
- 数组长度
- 容量、修改、遍历
- 数组内存模型
- 切片长度
- 容量和扩容策略
- 常见线性数据结构对比
- string库字符串操作
- Map遍历、sort库排序
- 函数定义和调用
- 函数调用原理
- 形参和可变参数
- 返回值和作用域
- 递归函数和效率
- 结构体可见性
- 结构体属性访问和修改
- receiver和结构体方法
- 深浅拷贝本质区别
- 结构体构造函数
- 面向对象编程
- 封装和构造函数
- 继承和覆盖
- Go语言多态的实现
- 对象的序列化和反序列化
- 面向接口编程
- 接口定义
- 实现
- 嵌入、包和模块化
- 包管理机制
- GoModules机制
- Go数据库编程
- SQLCRUD语句
- SQLBuilder开发
- ORM与GORM开发
- Go操作MongoDB
- Go网络和并发编程
- 进程和线程
- 线程状态机
- 多线程并发模型
- C/S编程模式
- TCP服务器开发
- IO模型
- 探秘协程本质
- GMP模型
- Go并发与锁
- ctx控制协程
02 基础书籍
《Go语言中文文档》
《Go语言学习笔记》
《Go语言趣学指南》
《Go语言编程》
《Go语言 101》
二、Go 进阶
01 进阶学习路线
- HTTP标准库与框架Gin
- Socket编程
- JavaScript语法入门
- Web入门
- 前端MVVM框架VUE3实战
- webUI实战
- 微博客系统前后端
- 前端项目导航页面实战
- 实现多平台Web前后端扣页面平台可视化
- 前端项目框架搭建
- 基于HTTP的RPC
- 基于Protobuf的RP
- Protobuf编解码
- GRPC流,Token认
- 微服务事件通讯模型分析
- go操作内存KV数据库
- go操作内容KV数据库
- go操作Reids
- 封装缓存模块
- etcd租约机制
- 基于etcd的服务注册于发现实现
- 分布式锁
- 服务发现
- web全栈开发:企业级微博客
- 微服务开发:微服务研发云
- 用户中心-中心化认证
- 多云资产管理平台(云CMDB)
- 微服务研发云平台:流水线项目
- 资源同步于审计中心
- 分布式CI/CD管理平台
- 云原生容器编排
- Kubernetes二次开发
- 云原生监控Prometheus定制开发
02 进阶书籍
《Go专家编程》:https://books.studygolang.com/GoExpertProgramming/
《Go语言高级编程》:https://chai2010.cn/advanced-go-programming-book -
《Go并发编程》
三、 Go 学习网站
01、菜鸟教程:https://www.runoob.com/go/go-tutorial.html
02、Go 语言中文网:https://studygolang.com/articles
03、Go By Example 中文版:https://gobyexample-cn.github.io
04、Go面试题:http://www.topgoer.cn/docs/gomianshiti/mianshiti
05、跟着单元测试学习Go :https://github.com/quii/learn-go-with-tests
06、地鼠文档:https://www.topgoer.cn/
四、Go Web开发框架
- beego:https://github.com/beego/beego
- Echo:https://github.com/labstack/echo
- gin:https://github.com/gin-gonic/gin
- Iris:https://github.com/kataras/iris
以上就是本文的全部内容,希望各位大佬学的开心。
需要学习资源的也欢迎踢我,希望对大家有所帮助~