1 go语言特点:原生支持高并发,带垃圾回收,快速编译静态编译型语言
2 go安装:
2.1 go的几种安装方式
2.2 Go的环境变量 $GOROOT:go的安装目录,配置后不会再更改;
$PATH:需要将go的bin目录添加到系统$PATH中以便方便使用go的相关命令,配置后也不会再更改;
$GOPATH:go项目在本地的开发环境的的项目根路径(以便项目编译,go build, go install),不同的项目在编译的时候该环境变量可以不同:上图:
2.3 GOPATH指配置的go的工作空间,区别于Go的安装包位置,GOPATH需要加入环境变量。比如GOPATH配置的路径指向gowork下,那么gowork目录下一般会有三个目录,bin,pkg,src,bin 下是可执行程序,理解为编译完成可直接执行的文件。pkg 下是应用包,可以理解为依赖包,有本地的,也有go get 第三方的。src就是存放源码的地方,一般一个目录一个项目,具体区分该目录文件是可执行程序还是应用包,要看package 是否是main,是则为可执行程序,反之则为应用包
3 Go命令;go build :编译源码文件,go install 生成可执行文件,go clean:清除相关应用包,go run 运行代码
golang 的go build、go install 命令都是可生成可实行文件,了解它们的小区别以选择适合自己的。
go install和go build在没有参数时运行,都会在当前目录下编译,如果当前目录是软件主程序(packagemain)
go build会生成可实行文件放在当前目录中
go install则会把它放到$GOPATH/bin中。
go install还会把导入的依赖包编译到$GOPATH/pkg,并缓存,如果包未做更改,下次编译则直接使用缓存。go build命令加参数-i也能达到go install的效果。
如果当前目录是非主包,则go install直接把编译结果安装到$GOPATH/pkg。
如果项目很大,每次编译都要花很长时间,则建议使用go install来编译,充分利用它对依赖包的缓存功能。