Go学习路线

发布于:2024-04-24 ⋅ 阅读:(40) ⋅ 点赞:(0)

Go学习路线

入门阶段

建议使用微信里的“软件管家”安装下载。
前期配置可能需要使用到的软件:

  1. Goland: 专门为 Go 语言开发者设计的开发环境。
  2. Apifox: 在线帮助开发者设计和管理 API 接口的工具。
  3. Vscode: 微软开发的免费代码编辑器,支持多种编程语言。
  4. Typora: 简洁强大的 Markdown 编辑器,让写作更轻松。
  5. SumatraPDF: 快速、轻量级的 PDF 阅读器。
    6.RedisDesktop: 图形化管理 Redis 数据库的客户端工具。
  6. Xshell: 强大的 SSH 客户端,用于远程连接服务器。
  7. Xftp: 文件传输工具,支持多种协议。
  8. Mysql8.0: 开源的关系型数据库管理系统,提供了许多新特性。
  9. Navicat: 数据库管理工具,支持多种数据库类型的管理和开发。
    11.Notepad++

一、Go基础和Goland的安装

安装Goland和Go的sdk:https://blog.csdn.net/Cappuccino_jay/article/details/129466743

1、菜鸟教程:https://www.runoob.com/go/go-tutorial.html
2、地鼠文档:https://www.topgoer.cn/docs/golang/golang-1ccjbpfstsfi1
3、老男孩(视频):(建议看到70集入门即可)
https://www.bilibili.com/video/BV1fD4y117Dg/?spm_id_from=333.337.search-card.all.click&vd_source=ae71f49143fab0ea36d2175f17f48b81
4、Go学习笔记:
https://gitee.com/xiwanli/knowledge-notes/tree/master/Go/go%E5%9F%BA%E7%A1%80%E9%83%A8%E5%88%86

二、学习日志文件及配置文件

1、日志文件库
 Logrus
 Zap
2、配置文件
 Yaml
 Ini
 Json

三、学习mysql

使用‘软件管家’安装即可。

1、安装mysql8.0

2、安装图形化界面Navicat

Mysql快速入门学习链接:https://www.runoob.com/mysql/mysql-tutorial.html

目前只需要学习mysql,以后有时间的话可以学习一下MongoDB。

四、html,css,js快速入门

学习链接:https://www.runoob.com/

五、写一个简单的前后端分离的记事本项目

技术栈:go、html、css、js、mysql

要求:实现前后端交互,登录,注册,添加,删除,搜索,修改即可。

六、Linux快速入门

1、个人笔记:
https://gitee.com/xiwanli/knowledge-notes/blob/master/Linux/linux%E7%AC%94%E8%AE%B0.md
2、菜鸟教程:
https://www.runoob.com/linux/linux-tutorial.html

七、Docker快速入门

1、个人笔记:
https://gitee.com/xiwanli/knowledge-notes/blob/master/Docker/Docker%E5%9F%BA%E6%9C%AC%E5%91%BD%E4%BB%A4.md

2、菜鸟教程:
https://www.runoob.com/docker/docker-tutorial.html

八、Git命令快速入门

1、易百教程:
https://www.yiibai.com/git/git-quick-start.html

2、菜鸟教程:
https://www.runoob.com/git/git-tutorial.html

九、使用Docker打包记事本项目部署到Linux服务器

Linux服务器可以使用vm虚拟机搭建(Ubuntu、Centos7),也可以选择使用阿里、腾讯、华为等的云服务器(学生可以免费使用1~3个月)

记事本项目地址:https://gitee.com/xiwanli/docker_go_react

到此,Go语言的学习和使用,以及对前后端的交互也有了一定的了解。我们正式深入后端的学习。

成长阶段

一、学习Gin框架

1、b站(视频):
https://www.bilibili.com/video/BV1gJ411p7xC/?spm_id_from=333.337.search-card.all.click&vd_source=ae71f49143fab0ea36d2175f17f48b81

2、码神之路文档:
https://mszlu.com/go/gin/01/01.html#_1-go%E6%B5%81%E8%A1%8C%E7%9A%84web%E6%A1%86%E6%9E%B6

二、学习Gorm

gorm文档:
https://gorm.io/zh_CN/docs/index.html

学会使用gorm建立数据库的表,以及操作增删改查等。

三、学习redis

1、Redis官方文档:https://www.redis.net.cn/tutorial/3501.html

2、b站go+redis视频讲解:
https://www.bilibili.com/video/BV1FY411d7JF/?spm_id_from=333.337.search-card.all.click&vd_source=ae71f49143fab0ea36d2175f17f48b81

四、使用gin框架写一个博客项目

注:以后在Gin框架十分熟练的情况下,可以学习beeGo框架

前端vue能看懂即可。最好做到能写部分vue代码,可以学习一下vue-cli脚手来快速开发web端。(react框架也可以私下看一看)

技术栈:go+redis+mysql+vue

Ginblog项目地址:https://gitee.com/xiwanli/ginblog

此时,我们已经对Go的第一个框架有了一定的了解了,接下来我们深入学习相关技能。

五、深入学习并发网络编程channel+goroutine

学习并发编程,到时候自行拷贝。

六、Linux深入学习

视频到时候拷贝一下即可。

七、了解云原生

进阶阶段

主攻微服务和云原生。

微服务技术栈:GRPC、RESTful API、 go-micro、Kafka、RocketMQ、RabbitMQ
云原生技术栈:Docker、Docker-Compose、Linux、Kubernetes、Sheel编程

注:以下可自行选择学习。

一、 使用Go实现分布式云存储系统

技术栈:
前端:HTML、CSS、Js
后端:Go、Redis

二、 K8s管理项目实战

三、 Go+ES8深入理解搜索服务

四、 微服务及云原生

五、 最后:面试宝典知识总结