基礎環境安裝

Golang 安裝環境

下載地址

  我這邊自己使用的電腦是 Windows OS,Windows 有兩個版本,一個是 .msi,一種是 .zip。前者直接安裝,環境變量自動配置。後者需要自己配置環境變量。

安裝

  安裝很簡單,http://docs.studygolang.com/doc/install

檢查安裝

  安裝完成後,請重新啓動命令行程序,然後運行以下命令以驗證Go是否已經正確安裝:

go version

開發工具

  • IntelliJ IDEA + Go 插件:我常用 IntelliJ IDEA,所以我使用的是加 Go 插件的方式
  • GoLand:一個專門針對 Golang 的 IDE
  • LiteIDE:也是一個專門針對 Golang 的 IDE

GOROOT 和 GOPATH

  上面說了,選擇 .msi 的方式會自動設置環境變量,共有兩個環境變量設置:

  • GOROOT:Golang 安裝目錄
  • GOPATH:代碼所在目錄

GOPATH

  我的 Golang 的代碼目錄結構一般是這樣的

~/Golang
    |-bin
    |-pkg
    |-src
        |-項目1
        |-項目2
        |-項目3
        |-第三方庫項目

 GOPATH 設置的目錄即爲:GOPATH = ~/Golang,而在開發工具中打開的目錄就是相對於項目的目錄,如:~/Golang/src/項目1

Golang 環境變量配置

Hello World

  國際慣例,首先來看一個 Hello World

package main

import "fmt" // 我們需要使用 fmt 包中的 Println() 函數

func main() {
    fmt.Println("Hello, world. 你好,世界!")
}

代碼解讀

  每個 Go 源代碼文件的開頭都是一個 package 聲明,表示該 Go 代碼所屬的包,包名並不需要和文件所在路徑相同(Java 那種)。包是 Go 語言裏最基本的分發單位,也是工程管理中依賴關係的體現。要生成 Go 可執行程序,必須建立一個名字爲 main 的包,並且在該包中包含一個叫 main() 的函數(該函數是 Go 可執行程序的執行起點)

  Go 語言的 main() 函數不能帶參數,也不能定義返回值。命令行傳入的參數在 os.Args 變量中保存。如果需要支持命令行開關,可使用 flag 包。

  在包聲明之後,是一系列的 import 語句,用於導入該程序所依賴的包。由於本示例程序用到了 Println() 函數,所以需要導入該函數所屬的 fmt 包。

  有一點需要注意,不得包含在源代碼文件中沒有用到的包,否則 Go 編譯器會報編譯錯誤。這與下面提到的強制左花括號 { 的放置位置以及之後會提到的函數名的大小寫規則,均體現了 Go 語言在語言層面解決軟件工程問題的設計哲學。

  所有 Go 函數(包括在對象編程中會提到的類型成員函數)以關鍵字 func 開頭。一個常規的函數定義包含以下部分:

func 函數名(參數列表)(返回值列表) {
    // 函數體
}

對應的一個實例如下:
func Compute(value1 int, value2 float64)(result float64, err error) {
    // 函數體
}

  Go 支持多個返回值。以上的示例函數 Compute() 返回了兩個值,一個叫 result,另一個是 err。並不是所有返回值都必須賦值。在函數返回時沒有被明確賦值的返回值都會被設置爲默認值,比如 result 會被設爲 0.0,err 會被設爲nil。

  Go程序的代碼註釋與C++保持一致,即同時支持以下兩種用法:

/*
塊註釋
*/

// 行註釋

  相信熟悉 C 和 C++ 的讀者也發現了另外一點,即在這段 Go 示例代碼裏沒有出現分號。Go 程序並不要求開發者在每個語句後面加上分號表示語句結束,這是與 C 和 C++ 的一個明顯不同之處。

  你也可能會自然地把左花括號 { 另起一行放置,這樣做的結果是 Go 編譯器報告編譯錯誤,這點需要特別注意:

syntax error: unexpected semicolon or newline before {
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章