Go(Golang)

Go语言开发环境配置

安装

先下载go的安装包
cd /tmp
wget https://golang.org/dl/go1.16.4.linux-amd64.tar.gz

go.dev现在没被墙
wget https://dl.google.com/go/go1.17.5.linux-amd64.tar.gz


上面的连接可能因为网络问题无法访问,可以用下面的镜像
wget https://studygolang.com/dl/golang/go1.16.4.linux-amd64.tar.gz
wget https://studygolang.com/dl/golang/go1.16.6.linux-amd64.tar.gz

wget https://studygolang.com/dl/golang/go1.17.linux-amd64.tar.gz



已安装过go的:
sudo rm -rf /usr/local/go && tar -C /usr/local -xzf go1.16.4.linux-amd64.tar.gz

go1.16.6是当前最新版,以后会变化

未安装过go的:
sudo tar -C /usr/local -xzf go1.16.4.linux-amd64.tar.gz

而配置环境变量
vim ~/.zshrc
export PATH=$PATH:/usr/local/go/bin
export GO111MODULE=on   # 可选,默认不设置为auto
保存退出并用 source ~/.zshrc 激活

验证安装
go version

Go开发基础知识

goroutine(协程)基本模型和调度设计策略

参考视频

高频常用命令

go mod

go mod init
go mod download
go mod tidy
go mod graph
go mod edit
go mod vendor
go mod verify
go mod why

go_mod

需要注意的环境变量

GO111MODULE

GO111MODULE

设置命令:$ go env -w GO111MODULE=on

入门推荐

进阶推荐

论坛社区

因为学习资料的时间都不太够,其实去逛论坛的时间真的不多,但是还是需要适当与大家交流学习的。

代码规范

实体书推荐

最简单的入门方法,找一本好教程,对着例子敲一遍练手。

  • Go语言实战 -- Go in Action, 快速过一下基础。
  • Go程序设计语言 The Go Programming Language -- 没错,就是那本Go语言圣经。(如果是有经验的开发者,其实建议学这个的同时开始做实际项目)
  • Golang高级编程 -- 如果看完上面的,可以看这本扩充下,电子版是开源的。

Blog推荐

多版本管理工具GVM

什么是 gvm

gvm,即 Go Version Manager,Go 版本管理器,它可以非常轻量的切换 Go 版本。对比其他语言,通常也有类似的工具,如 NodeJS 的 NVM,Python 的 virtualenv 等。

用GVM最好是安装go 1.5+的版本,1.5以下版本看官方解释。

PS:注意设置gvm后可能引发系统GOPATH自定义配置失效的问题。

GVM官方仓库 如何灵活地进行 Go 版本管理

Installing
To install:

bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)

Or if you are using zsh just change bash with zsh:

zsh < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)

Installed GVM v1.0.22

Please restart your terminal session or to get started right away run
 `source /Users/xxxx/.gvm/scripts/gvm`
Uninstalling
To completely remove gvm and all installed Go versions and packages:

gvm implode

常用命令

gvm list                       查看本地系统已go版本
gvm listall                    查看可安装的go版本
gvm install go1.13.5           安装指定go版本,这里是1.13.5
gvm use go1.13.5 [--default]   选择启用指定版本,果想默认一个版本,加上 --default 设置即可

gvm 目录结构

gvm 是 shell 编写,默认是安装在 $HOME/.gvm/ 目录下。查看下它的目录结构会有助我们了解它的实现。

archive             # go 源码
bin                 # gvm 可执行文件
environments        # 不同环境的环境变量配置
scripts             # gvm 的子命令脚本
logs                # 日志信息
pkgsets             # 每个独立环境 gopath 所在路径

A tour of go的踩坑,和GOPATH设置相关

本地安装 Go Tour(包含中文版本)

好用的插件

pip install when-changed

when-changed -r -v -1 . go run hello.go

只要hello.go变动,就会重新编译执行

其它参考