创建go项目并编写代码
1. 创建项目test
mkdir test
cd test
go mod init gofirst
会自动生成一个go.mod文件
2. 简单代码编写和跨包调用
用vscode打开创建好的test项目,目录如下
在helloworld.go中调用不同包中的compute.go文件
helloworld.go代码如下:
package main
import (
"fmt"
"gofirst/functions"
)
func main() {
a := 5
fmt.Println("Hello World", a)
b := 7
c := functions.Add(a, b)
fmt.Println(c)
}
compute.go代码如下:
package functions
func Add(a int, b int) int {
return a + b
}
注意:import中应当使用创建文件夹时的module名,而非项目名,即gofirst
函数名必须大写
3. 运行程序
在vscode中打开终端,快捷键或者左上的terminal
运行:go run helloworld.go
4. 下载第三方依赖
go get gonum.org/v1/gonum/stat
更新时,添加 -u 就行了
下载在go_path(自定义的GOPATHL路径)的pkg文件夹下,在/go_path/pkg/mod中查看
使用方法:
package main
import (
"fmt"
"gonum.org/v1/gonum/stat"
)
func main() {
arr := []float64{7,5,12,1}
v := stat.Variance(arr, nil)
fmt.Println("方差=%f\n", v)
}
go常用命令
go help: 查看帮助文档,如go help build
go build:对源代码和依赖的文件进行打包,生成可执行文件
go build -o newname helloworld.go,-o可以修改默认可执行文件名,可以省略
go install:编译并安装包或依赖,安装到GOPATH/bin下
由于设置了环境变量,go install之后可以生成一个在任意目录下都可执行的可执行文件
go install helloworld.go
go get:下载依赖库,会在go.mod下会自动生成require代码行
go mod:module相关命令
go mod init module_name
go mode tidy:清除go.mod中未被使用的依赖
go run:编译并允许,相当于先执行了依次build再install
go test:执行测试代码
go tool:go自带工具
go tool pprof对cpu、内存和协程进行监控
go tool trace跟踪协程的执行过程
go vet:检查代码语法错误
go fmt:自动进行格式化,如go fmt helloworld.go
go version:查看go的版本号
go env:查看go的环境配置等