選擇 Go 版本
挑版本之前,我們先來看看 Go 語言的版本發布策略。如今,Go 團隊已經将版本發布節奏穩定在每年發布兩次大版本上,一般是在二月份和八月份發布。Go 團隊承諾對最新的兩個 Go 穩定大版本提供支持,比如目前最新的大版本是 Go 1.17,那麼 Go 團隊就會為 Go 1.17 和 Go 1.16 版本提供支持。如果 Go 1.18 版本發布,那支持的版本将變成 Go 1.18 和 Go 1.17。支持的範圍主要包括修複版本中存在的重大問題、文檔變更以及安全問題更新等。
基于這樣的版本發布策略,在你選擇版本時可以參考這幾種思路:一般情況下,我建議你采用最新版本。因為 Go 團隊發布的 Go 語言穩定版本的平均質量一直是很高的,少有影響使用的重大 bug。你也不用太擔心新版本的支持問題,Google 的自有産品,比如 Google App Engine(以下簡稱為 GAE)支持都會很快,一般在 Go 新版本發布不久後,GAE 便會宣布支持最新版本的 Go。你還可以根據不同實際項目需要或開源社區的情況使用不同的版本。
有的開源項目采納了 Go 團隊的建議,在 Go 最新版本發布不久就将當前項目的 Go 編譯器版本升級到最新版,比如 Kubernetes 項目;而有的開源項目(比如:docker 項目)則比較謹慎,在 Go 團隊發布 Go 1.17 版本之後,這些項目可能還在使用兩個發布周期之前的版本,比如 Go 1.15。但多數項目處于兩者之間,也就是使用次新版,即最新版本之前的那個版本。比如,當前最新版本為 Go 1.17,那麼這些項目會使用 Go 1.16 版本的最新補丁版本(Go 1.16.x),直到發布 Go 1.18 後,這些項目才會切換到 Go 1.17 的最新補丁版本(Go 1.17.x)。如果你不是那麼“激進”,也可以采用這種版本選擇策略。因為我們這門課是 Go 語言學習的課,所以我這裡建議你直接使用 Go 最新發布版,這樣我們可以體驗到 Go 的最新語言特性,應用到标準庫的最新 API 以及 Go 工具鍊的最新功能。在這一節課裡我們以 Go 1.16.5 版本為例講述一下其安裝、配置和使用方法。選定 Go 版本後,接下來我們就來看看幾種常見的 Go 安裝方法。
安裝 Go
Go 從 2009 年開源并演化到今天,它的安裝方法其實都已經很成熟了,接下來呢,我們就逐一介紹在 Linux、macOS、Windows 這三大主流操作系統上安裝 Go 的方法,我們假設這些操作系統都安裝在 X86-64 的平台上,首先我們來看 Linux。
在 Linux 上安裝 Go
Go 幾乎支持 Linux 所有的主流發行版操作系統,常見的包括 Ubuntu、CentOS(Redhat 企業版 Linux 的社區開源版)、Fedora、SUSE 等等,Go 在這些主流的 Linux 發行版操作系統上的安裝方法都是一樣的(當然某個發行版也可能會利用其軟件安裝管理器提供僅屬于其自己的安裝方法)。你可以參考下面這樣的安裝步驟。首先,我們需要下載并解壓 Go Linux 安裝包:
wget -c htt> 在 Windows 上,我們最好的安裝方式就是采用圖形界面引導下的 Go 安裝方法。我們打開Go 包的下載頁面,在頁面上找到 Go 1.16.5 版本的 Windows msi 安裝包(AMD64 架構下的):go1.16.5.windows-amd64.msi,通過浏覽器自帶的下載工具它下載到本地任意目錄下。雙擊打開已下載的 go1.16.5.windows-amd64.msi 文件,我們就能看到下面這個安裝引導界面:
和所有使用圖形界面方式安裝的 Windows 應用程序一樣,我們隻需一路點擊“繼續(next)”就可完成 Go 程序的安裝了,安裝程序默認會把 Go 安裝在 C:\Program Files\Go 下面,當然你也可以自己定制你的安裝目錄。除了會将 Go 安裝到你的系統中之外,Go 安裝程序還會自動為你設置好 Go 使用所需的環境變量,包括在用戶環境變量中增加 GOPATH,它的值默認為 C:\Users[用戶名]\go,在系統變量中也會為 Path 變量增加一個值:C:\Program Files\Go\bin,這樣我們就可以在任意路徑下使用 Go 了。
安裝完成後,我們可以打開Windows的“命令提示符”窗口(也就是CMD命令)來驗證一下Go有沒有安裝成功。在命令行中輸入go version,如果看到下面這個輸出結果,那證明你這次安裝就成功了: C:\Users\tonybaigo version go version go1.16.5 windows/amd64
配置 Go
其實 Go 在安裝後是開箱即用的,這也意味着我們在使用 Go 之前無需做任何配置。但為了更好地了解和學習 Go,我們還是要認識一些 Go 自帶的常用配置項。Go 的配置項是以環境變量的形式存在的,我們可以通過下面這個命令查看 Go 的這些配置項:
go env
這裡我也給你總結了一些常用配置項:
如果你還要了解更多關于 Go 配置項的說明,你可以通過 go help environment 命令查看。
,