1 go語言特點:原生支持高并發(fā),帶垃圾回收,快速編譯靜態(tài)編譯型語言
2 go安裝:
2.1?go的幾種安裝方式
2.2? Go的環(huán)境變量??$GOROOT:go的安裝目錄,配置后不會再更改;
$PATH:需要將go的bin目錄添加到系統(tǒng)$PATH中以便方便使用go的相關命令,配置后也不會再更改;
$GOPATH:go項目在本地的開發(fā)環(huán)境的的項目根路徑(以便項目編譯,go build, go install),不同的項目在編譯的時候該環(huán)境變量可以不同:上圖:

2.3 GOPATH指配置的go的工作空間,區(qū)別于Go的安裝包位置,GOPATH需要加入環(huán)境變量。比如GOPATH配置的路徑指向gowork下,那么gowork目錄下一般會有三個目錄,bin,pkg,src,bin 下是可執(zhí)行程序,理解為編譯完成可直接執(zhí)行的文件。pkg 下是應用包,可以理解為依賴包,有本地的,也有go get 第三方的。src就是存放源碼的地方,一般一個目錄一個項目,具體區(qū)分該目錄文件是可執(zhí)行程序還是應用包,要看package 是否是main,是則為可執(zhí)行程序,反之則為應用包
3 Go命令;go build :編譯源碼文件,go install 生成可執(zhí)行文件,go clean:清除相關應用包,go run 運行代碼
golang 的go build、go install 命令都是可生成可實行文件,了解它們的小區(qū)別以選擇適合自己的。
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來編譯,充分利用它對依賴包的緩存功能。