go语言入门指南零基础入门go语言|golang入门指南(代码片段)

小生凡一 小生凡一     2022-12-02     226

关键词:

文章目录

写在前面

这篇文章是我自己亲身经历这样去学go的,本人是从20年的10月份开始入坑go语言的,当时的资料真的少,现在关于go语言的资料已经很多了。
我就在把我自己的学习路线稍微梳理一遍,我个人觉得,学完之后,像深信服,b站,得物什么的应该是没什么问题, 但如果是字节,腾讯,阿里这种就除了一些硬性条件之外,自己再刷多点题,背多点八股了。

全部练习项目都在github这个仓库中https://github.com/CocaineCong/Golang-Learning

适合大一、大二、或是其他语言转go的同学

1. 【第一轮】基础部分

1.1 教程

Go语法这方面一定要注重好基础,比如数组,切片,map,chan这种基础的数据类型。

语法入门可以看这个 入门教程,主要是挺新的这个教程。

附上我自己做的思维导图

1.2 练习

可以选择 PTA 上面的题目来进行练习。

PTA练习

我的 Go语言入门 60题 专栏。入门60题

2. 【第二轮】网络爬虫

2.1 教程

用 go 去做爬虫,主要是为了了解http的请求与响应,了解 web中参数的传递,页面的布局,点击逻辑等等… 为之后的web开发奠定基础用的。

同样的,我们也可以学习到并发爬虫,这样也用到了我们go语言天生支持高并发的特性。

这个是我录制的一个关于Go语言爬虫的练习 Go语言爬虫


对应的案例的代码也放在了github上 GitHub案例

这个是我自己写的关于爬虫的一个思维导图的总结。

2.2 mod 管理第三方包

到这里之后,我们可能会用到第三方的工具包,这时候我们就要用go mod去管理我们的第三方包文件了,而go mod如何去理解?

这个视频我觉得讲的很不错了:Go Mod理解

2.3 git 机制

那么我们之后还需要用到git,像git我们应该怎么学习呢?
我的建议是git一定要自己多用,多记录一些常用的命令。
教程的话,可以看看这个git教程:GIT教程

一开始用 git,我们可以先用熟 commit、push、pull 啥的,之后再用多一些在项目版本的管理上,之后我们就可以再学去做解决冲突

3. 【第三轮】备忘录

接下来就到我们的后端开发了,前面第一轮打好了基础第二轮懂了一些网站的请求与响应,接下来就可以进行开发了。

这一轮我们重点是放在规范上,比如命名规范,项目结构规范,接口定义规范,返回规范等等…

这一轮其实我们就做一个简单的备忘录而已。在熟悉规范的同时,以练带学,不断通过项目去学习框架,gin、gorm。

跟着敲就好了。

视频:gin+gorm备忘录 视频教程
Github地址:gin+gorm备忘录 源码

4. 【第四轮】商城 or 视频网站

当我学习完规范之后,我们就开始深入学习业务了,这时候我们就可以开始做一个大一点的项目,比如商城,视频网站之类的。

这个时候我们就可以去接触redis、docker这些比较流行的技术了。

视频链接

源码地址

5. 【第五轮】IM 即时通信

除了基础业务的处理之外,我们还要了解 websocket 通信,这个也是一个必不可少的技术。

视频地址
Github源码地址

6. 【第六轮】微服务

在学习完业务处理,ws处理之后,我们再开始微服务框架的学习。理解proto的作用,理解 rpc 的过程,服务发现,服务注册等等…


视频链接
Github源码地址

7.【第七轮】底层架构

在我们熟悉完上面的技术框架之后,我们有了广度,在我们有了广度的条件下,我们可以往其中一个方向进行深度的专研。

比如说 极客兔兔的手撕框架,可以自己找一个来实现。
这个就很完美了 极客兔兔链接

这些是提升自己业务能力的一个方法流程,但是如果是要做工作、实习的话,还是另外的流程去学习,不单单是这个,为什么我精通curd ?还找不到工作? 这个我们下一次再总结说说,因为这些其实只是入门而已,只是扩展我们的广度,还没能很好的深入学习。

[易学易懂系列|golang语言|零基础|快速入门|](代码片段)

golang编程语言,是google推出的一门语言。主要应用在系统编程和高性能服务器编程,有广大的市场前景,目前整个生态也越来越强大,未来可能在企业应用和人工智能等领域占有越来越重要的地位。本文章是【易学易懂系列|编... 查看详情

go语言的开始入门

...言:作为Web开发人员掌握多种后台是必须的,趁自己有C语言的基础,所以尝试入门Golang(一).基本数据类型的认识  小结:int大小默认与系统相关,byte只能够存单字节,  (二).Golang中的变量定义  小结:定义的... 查看详情

go基础:入门学习资料(代码片段)

...文版)前言·Go语言圣经https://book.itsfun.top/gopl-zh/《Go入门指南》|Go技术论坛《Go入门指南》|Go技术论坛我们致力于为Golang/Go语言开发者提供一个分享创造、结识伙伴、协同互助的中文论坛,由 查看详情

go语言入门篇-golang之文本编码处理

Golang之文本编码处理  查看详情

go语言基础入门(代码片段)

...与使用多模块工作区总结前言Go是由谷歌支持的开源编程语言,属于编译型语言,对并发编程有较好的支持。官网页面:https://go.dev/或者https://golang.google.cn/主要适合 查看详情

go语言入门很简单:什么是golang

Golang是一种相对较新的编程语言,很快就流行起来。StackOverflow对开发人员进行了民意调查,发现Golang是学习Go编程语言的第三大热门。为了更好地理解为什么Go如此受欢迎,我们将看看它是如何使用的,为什么值得学习,以及它... 查看详情

golang语言入门及安装

golang语言入门及安装go语言是google在2009年发布的开源编程语言使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。本次讲解在windows上安装go语言的开发环境首先进入go语言中文社区地址:https://studygolang.com/... 查看详情

golang入门(代码片段)

Golang入门一、Golang简介1.Go语言的特点2.Golang的变量作用域3.Golang执行流程的两种方式二、Golang的基本操作1.在Linux上安装Golang语言开发包2.Golang变量的基本使用3.Golang中整数的类型4.Golang基本数据类型的默认值5.基本数据类型转换为S... 查看详情

8小时快速入门,golang安装学习,有语言基础的快来学习(代码片段)

...go的相关路径,在末尾加入以下内容vim~/.bashrc#设置go语言路径exportGOROOT=/usr/local/go#设置工作路径exportGOPATH=$HOME/go#设置系统环境变量exportPATH=$PATH:$GOROOT/bin:$GOPATH/bin#刷新配置source~/.bashrc#检查是否安装go成功goversion或者go... 查看详情

8小时快速入门,golang安装学习,有语言基础的快来学习(代码片段)

...go的相关路径,在末尾加入以下内容vim~/.bashrc#设置go语言路径exportGOROOT=/usr/local/go#设置工作路径exportGOPATH=$HOME/go#设置系统环境变量exportPATH=$PATH:$GOROOT/bin:$GOPATH/bin#刷新配置source~/.bashrc#检查是否安装go成功goversion或者go... 查看详情

go语言入门(代码片段)

GO语言耳闻已久的Go语言,今天入门了解一下。Go之所以火爆的原因之一是,拥有CoreOS,Kubernetes(Google),InfluxDB知名大客户,另外Docker也是Go语言所编写。Go语言的功能特性(所有这些特性,以后慢慢学习了解)并发支持简单性... 查看详情

go语言入门150题l1-051打折(5分)go语言|golang(代码片段)

【题解】【PTA团体程序设计天梯赛】L1-051打折(5分)Go语言|Golang去商场淘打折商品时,计算打折以后的价钱是件颇费脑子的事情。例如原价¥988,标明打7折,则折扣价应该是¥988x70%=¥691.60。本题就请你... 查看详情

go语言入门

环境安装Go语言支持以下系统:LinuxFreeBSDMacOSX(也称为Darwin)Window  安装包下载地址为:https://golang.org/dl/。  Windows下直接下载对应的版本安装就可以了。HelloWorld  新建hello.go,输入以下代码: packagemainimport"fmt"funcmain()... 查看详情

go语言入门150题l1-067洛希极限(10分)go语言|golang(代码片段)

【题解】【PTA团体程序设计天梯赛】L1-067洛希极限(10分)Go语言|Golang洛希极限(Rochelimit)是一个天体自身的引力与第二个天体造成的潮汐力相等时的距离。当两个天体的距离少于洛希极限,天体就会倾向碎散,继... 查看详情

go语言入门150题l1-056猜数字(20分)go语言|golang(代码片段)

【题解】【PTA团体程序设计天梯赛】L1-056猜数字(20分)Go语言|Golang一群人坐在一起,每人猜一个100以内的数,谁的数字最接近大家平均数的一半就赢。本题就要求你找出其中的赢家。输入格式:输入在第一行给出一个正整数... 查看详情

go语言入门150题l1-047装睡(10分)go语言|golang(代码片段)

【题解】【PTA团体程序设计天梯赛】L1-047装睡(10分)Go语言|Golang你永远叫不醒一个装睡的人——但是通过分析一个人的呼吸频率和脉搏,你可以发现谁在装睡!医生告诉我们,正常人睡眠时的呼吸频率是每分钟15-20次&#x... 查看详情

go语言入门150题l1-044稳赢(15分)go语言|golang(代码片段)

【题解】【PTA团体程序设计天梯赛】L1-044稳赢(15分)Go语言|Golang大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:现要求你编写一个稳赢不输的程序,根据对方的出招,给出对应... 查看详情

go语言入门150题l1-065嫑废话上代码(5分)go语言|golang(代码片段)

...解】【PTA团体程序设计天梯赛】L1-065嫑废话上代码(5分)Go语言|GolangLinux之父LinusTorvalds的名言是:“Talkischeap.Showmethecode.”(嫑废话,上代码)。本题就请你直接在屏幕上输出这句话。输入格式:本题没有输入。输出... 查看详情