文章目录
- go开发环境
- 1. 下载安装包
- 2. 配置环境变量
- 3. GOPROXY
- go语言特性
- 1. go的优势
- 2. go适合做什么
- 3. go缺点
- 编写一个go程序
- 注:在VSCode中补全go代码
go开发环境
我这里是windows操作系统的环境安装,其他系统可以查看菜鸟教程:Go 语言环境安装
1. 下载安装包
安装包下载地址为:https://go.dev/dl/
双击.msi文件安装环境:
命令行输入go version
出现下面版本,说明环境安装成功
2. 配置环境变量
- GOROOT:go环境所在的目录。
- GOPATH:go项目代码存放的位置。就是其他IDE的workspace。
在环境的系统变量中配置GOROOT和GOPATH,并且确保用户变量中的GOPATH路径与系统变量中的相同:
在系统变量的Path中也要加入go下的bin目录路径(一般会自动添加):
命令行输入go env
查看是否配置成功:
3. GOPROXY
Go1.14版本之后,推荐使用go mod模式来管理依赖了,也不再强制我们把代码必须写在GOPATH下面的src目录了,你可以在你电脑的任意位置编写go代码。
默认GoPROXY配置是:GOPROXY=https://proxy.golang.org,direct,
由于国内访问不到 https://proxy.golang.org 所以我们需要换一个PROXY,这里推荐使用https://goproxy.io 或 https://goproxy.cn。
可以执行下面的命令修改GOPROXY:
#开启mod模式(项目管理需要用到)
go env -w GO111MODULE=on
#重新设置成七牛镜像源(推荐)
go env -w GOPROXY=https://goproxy.cn,direct
#查看环境变量
go env
IDE:选择使用 VSCode/Goland
go语言特性
1. go的优势
- 部署简单:直接编译成机器码、不依赖其他库、直接运行即可部署
- 静态语言类型:编译的时候检查出来隐藏的大多数问题
动态语言:没有编译器,只能在执行过程中逐条判断对错(Shell脚本,python,JavaScript)
- 语言层面的并发:天生的基因支持,充分利用多核
- 强大的标准库:runtime系统调度机制、高效的GC垃圾回收、丰富的标准库
runtime:go语言调度的平均分配
GC垃圾回收:go1.8之后,GC加入了三色标记和混合写屏障,效率高
标准库:文本、输入输出、同步机制、数字、日期和时间…
- 简单易学:25个关键字、内嵌C语法支持、面向对象特征(封装、继承、多态)、跨平台
2. go适合做什么
- 云计算基础设施:Docker、Kubernetes、七牛云存储等。
- 基础后端软件
- 微服务:go-kit
3. go缺点
- 包管理,大部分包在github上
- 所有Exception都用Error来处理
C语言全部使用Error来处理,C语言没有异常。
Java具有Exception
编写一个go程序
在 GOPATH 下新创建一个文件夹,在 VSCode 中编写一个 hello.go 程序:
package main// 程序使用到的包(函数)
import "fmt"func main() {fmt.Println("Hello go!")
}
在控制台执行:
- 每个 go 程序由包构成,程序从
main
包开始。 - 用 import 导入使用到的包,导入多个包:
import ("fmt""time"
)//也可以
import "fmt"
import "time"
- golang 中的语句,可以加“;”也可以不加,通常不加
- go语言的语法,定义函数的时候,‘{’ 必须和函数名在同一行,不能另起一行,否则会编译错误。
注:在VSCode中补全go代码
在终端下载go相关插件:
go env -w GOPROXY=https://goproxy.cn,direct
go env GOPROXY
go clean -modcache
go install golang.org/x/tools/gopls@latest
go install github.com/cweill/gotests/gotests@latest
go install github.com/fatih/gomodifytags@latest
go install github.com/josharian/impl@latest
go install github.com/haya14busa/goplay/cmd/goplay@latest
go install github.com/go-delve/delve/cmd/dlv@latest
go install honnef.co/go/tools/cmd/staticcheck@latest
执行后,在 GOPATH 的 bin 目录下,有插件生成:
重启 VSCode,即可自动补全代码以及代码提示。