Go语言学习笔记
安装
Go官网下载最新的安装包:https://go.dev/doc/install,然后执行安装
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.22.4.linux-amd64.tar.gz
添加/usr/local/go/bin到PATH环境变量,编辑$HOME/.profile,添加:
export PATH=$PATH:/usr/local/go/bin
检查Go语言版本
go version
看到你安装的版本号,就成功了。
源代码的组织
在Go 1.11版本之前使用$GOPATH环境变量来指定工作空间根目录,GOPATH通常包行src、pkg和bin:
- src/:存放Go源代码。
- pkg/:保存编译后的包文件。
- bin/:编译后的可执行文件。
在Go 1.11之后的版本,可以在任何目录下创建项目,只需在项目根目录下初始化模块(使用go mod init
典型的Go项目结构:
myproject/
├── cmd/
│ ├── main.go
│ └── ...
├── pkg/
│ ├── mypackage/
│ │ ├── mypackage.go
│ │ └── ...
│ └── ...
├── vendor/
│ ├── ...
└── go.mod
- cmd/: 包含项目的入口点,通常是应用程序的main包。
- pkg/: 包含项目中的库代码。
- vendor/: 使用Go Modules时,依赖项会存放在这里。
- go.mod: 模块的配置文件。
调用外部包中的代码
在https://pkg.go.dev搜索需要的包。
常用命令
- go mod init example/hello:创建模块,example/hello是模块名
- go mod tidy:下载依赖的外部包
- go run .:运行当前目录代码
- go get rsc.io/quote:下载外部包
编译
go build -o hello
-o是可选的,用来指定输出的文件名
交叉编译:
# 编译Windows可执行文件
GOOS=windows GOARCH=amd64 go build -o hello.exe