golang作為靜態語言,在web端開發,高並發上具有優勢,是google開發的現代語言。
代碼結構及其簡單運行
如何安裝golang,自己上網查一大堆。一般go項目代碼是如何組織,如何執行測試,如何編譯項目,如何執行,如何引用外包.
建立項目目錄
建立一個工作目錄calcproject
<calcproject>工作目錄 <src>原始碼目錄(其他項目目錄放在此檔案夾中) <calc> 項目目錄 main.go 主函數檔案 <simplemath> 工具目錄 add.go add_test.go 測試檔案 sqrt.go sqrt_test.go <bin>二進位目錄 <pkg>引用包的編譯
代碼
main.go
package main import ( "os" "fmt" "simplemath" "strconv" ) var Usage = func(){ fmt.Println("USAGE: cal command [argument]..") }func main(){ args := os.Args if args == nil || len(args) < 2{ Usage() return } switch args[1]{ case "add": fmt.Println("[0]:%s",args[1]) v1, err1 :=strconv.Atoi(args[2]) v2, err2 := strconv.Atoi(args[3]) if err1 != nil || err2 != nil{ fmt.Println("USAGE: cal add int1 int2") return } ret := simplemath.Add(v1, v2) fmt.Println("Result:", ret) default: Usage() } }
其實Add方法不一定就是在add檔案中,也可以在sqrt中實現,可見其go是在simplemath包中搜尋公用方法.
sqrt.go
package simplemathfunc Add(a int, b int) int { return a+b}
simplemath檔案中其他的檔案,一定要寫明package simplemath否則就報錯了
設定go的執行環境
go的執行環境依賴於GOPATH的路徑,否則你在執行go build calc項目時,會報錯,是無法找到項目.所以在~/.bashrc中添加GOPATHD = /xx/xxx/calproject;source ~/.bashrc. 相當於指定了一個工作目錄,go build calc
測試
go test simplemath 會找到test檔案並進行測試。gdb calc 也可進行單步調試
擷取第三方包
go get github.com/xxx,但是你會發現速度超級慢怎麼辦
go get -u github.com/gpmgo/gopm//下載完成之後用go build xxx,產生gopm檔案,放在系統bin目錄中gopm get golang.org/x/net 下載