開始使用 GoLang
安裝 Golang
Windows
透過官網下載 msi 安裝檔: https://golang.org/dl/ ,安裝檔會自動將資料夾 c:\Go\bin
資料夾加到 PATH 環境變數底下,安裝完記得 設定 GOPATH 環境變數,重新開機後可以開始使用。
Mac / Linux
Unix 環境可以使用 gvm 快速安裝並切換不同 Go 語言的版本: https://github.com/moovweb/gvm#installing
顯示 Go 版本
go version
查看 Go 環境
使用 go env
查看 Go 相關環境變數,結果如下面的例子:
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/garfieldduck/Documents/GoWork"
GORACE=""
GOROOT="/usr/local/opt/go/libexec"
GOTOOLDIR="/usr/local/opt/go/libexec/pkg/tool/darwin_amd64"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/ly/c6f9637d4zlc7km00pg6znhc0000gn/T/go-build865350722=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
- GOROOT: Golang 安裝的位置
- GOPATH: 告訴 Go tool workspace 位在哪裡
GOPATH 底下資料夾
GOPATH 底下一般會細分三個資料夾:
src
- 存放 Go 程式碼的地方 (例如 .go 程式碼)pkg
- Go packages 編譯後的產生的文件bin
- 已安裝的可執行檔
試著安裝一個 Package 便可以看到 GOPATH 底下自動產生的三個資料夾。
透過 go get
從網路抓取 go package,並放到 GOPATH 底下 (其中的原始檔 src
以及已經編譯的 pkg
):
go get gopkg.in/gin-gonic/gin.v1
go install
指令則是安裝指定的 Package,把可執行檔放到 $GOPATH/bin
底下(下面的例子會產生 $GOPATH/bin/gin):
go install gopkg.in/gin-gonic/gin.v1
了解 Go 的 Package
所有 Go 原始碼都是 package 的一部分,所有檔案都從 package statement 開始,而程式則從 main 開始執行:
package main
import "fmt"
func main() {
fmt.Println("Hello, world!")
}
檔案中大寫開頭的 function 為 exported function,可以讓外部程式碼呼叫:
// PrintHello prints hello
func PrintHello() {
...
}
小寫開頭的 function 外部則不可以呼叫,為 unexported function:
func sayHello() {
...
}