欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

学习GO编程必备知识汇总

程序员文章站 2022-07-05 08:57:29
如果你想开始学习go语法前,请先背熟下述4点: 1. 环境变量: 使用go env查看环境变量 goarch/gohostarch: 体系架构, amd64或386...

如果你想开始学习go语法前,请先背熟下述4点:

1. 环境变量:

使用go env查看环境变量

goarch/gohostarch: 体系架构, amd64或386

goos/gohostos: 操作系统, linux或windows

goroot: go安装目录

gobin: go程序目录

gotooldir: go工具目录

cgo_enabled: 是否启用cgo

cc

cxx

gogccflags

gorace: 数据同步检测, 配合go test, go run, go build, go install的-race选项.

gopath: go包查找路径

2. 代码组织:

- $gopath包含多个workspace

- workspace包含src, pkg, bin

- src包含package, 即program, library

- package包含go file

需要明白:

* package name vs package path

package name指go file中使用package声明的identifie. package path指相对gopath的路径. 相同package path, 相同package name.

package import完整语法:

import [name] "path"

其中:

name部分可以

无, 使用package声明的默认name
点, 使用当前package
blank, 仅执行init
name, 自定义名称
path部分可以

绝对路径: 相对$gopath的路径
相对路径: 相对当前文件的路径.

注意: 使用vendor机制不能出现相对路径, 否则解析出错.

* program vs library

package name为main表示program

package name非main表示library

3. 代码测试

使用go test命令执行测试代码.

test file以_test为后缀.
test func以test为前缀.

4. 远程包

使用go get命令获取远程包.

但go test命令依赖git或svn.