本文章適合那些想入門Go語言,卻又不知道如何搭建自己的第一個HelloWorld的同學。
推薦幾個Go語言相關學習網站:
C語言中文網: http://c.biancheng.net/golang/
Go語言中文網(上面有官方中文參考文檔):https://studygolang.com/
本文章使用的編譯器為GoLand,不使用此編譯器的可以划過(雖然還有其他免費IDE,但是個人感覺GoLand較為好用)。
一:Go語言背景
首先介紹一些關於Go語言的背景知識,內容大多百度來的,已經了解的同學直接跳過。
Go(又稱 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 開發的一種靜態強類型、編譯型語言。Go 語言語法與 C 相近,但功能上有:內存安全,GC(垃圾回收),結構形態及 CSP-style 並發計算。
羅伯特·格瑞史莫(Robert Griesemer),羅勃·派克(Rob Pike)及肯·湯普遜(Ken Thompson)於2007年9月開始設計Go,稍后Ian Lance Taylor、Russ Cox加入項目。Go是基於Inferno操作系統所開發的。Go於2009年11月正式宣布推出,成為開放源代碼項目,並在Linux及Mac OS X平台上進行了實現,后來追加了Windows系統下的實現。在2016年,Go被軟件評價公司TIOBE 選為“TIOBE 2016 年最佳語言”。 目前,Go每半年發布一個二級版本(即從a.x升級到a.y)(百度百科)
Go語言的優缺點可以自行百度,例如:https://blog.csdn.net/v157688/article/details/92805304
二:第一個HelloWorld
2.1 Go語言開發環境配置
Go語言開發環境下載地址:https://studygolang.com/dl (選擇Microsoft Windows版本下載)
下載后,打開安裝,然后點擊Next。
繼續Next。
到這步,選擇安裝路徑,我選的是D:\Go\,這個路徑就是后面提到的GOROOT路徑(重要),選好之后點Next。
繼續點Install安裝。然后等兩分鍾就裝完了。
最后點Finish,這樣,Go語言開發環境就安裝完成了。
還有一步,配置Go的環境變量:
然后打開Path,添加環境變量:
這個時候,打開cmd,輸入 go versioin就會出來當前安裝的Go語言環境版本。我安裝的版本為go1.13.5
到此,Go語言環境就安裝完成了。
2.2 HelloWorld
我用的Go語言編譯器是GoLand。
GoLand下載地址:https://www.jetbrains.com/go/
GoLand破解教程:https://studygolang.com/articles/21812?fr=sidebar
GoLand的安裝就不寫了,隨便安裝,安裝好后,打開如下圖:
這時候我們點New Project,創建新項目。
創建項目的一些配置,下面的GOROOT就自動識別出我們剛安裝的Go語言環境。
創建后如下圖:
接下來,我們配置一下,我們的目錄結構(包結構)
bin文件目錄:用於存放編譯\生成后的可執行文件(exe)
src文件目錄:用於存放源代碼
go.mod包管理文件就放在src下面就行。
之后,我們還要設置GOPATH、Module GOPATH路徑。
在GoLand中,選擇File->Settings,打開設置
這個時候,基本的配都設置好了,下面開始HelloWorld程序編寫。
右擊main包,選擇New->Go File,新建Go文件。這里我們選擇Simple Application ,對於要生成一個主入口程序文件,我們選Simple Application,這個和Empty File沒什么太大區別,就僅僅多了一個main函數方法,其他都一樣。名字隨便起,我這里就叫HelloWorld了。
打印HelloWorld。我們用Go自帶的打印方法打印。
輸入:fmt.Println("HelloWorld GhostCakeMaker")
這時系統會自動識別並引入包所在的目錄:import "fmt",因為這個是Go自帶的SDK里的方法。可以自己識別到並自動添加,后面自己引用第三方的也一樣。這里也強調一點,引入的是這個包所在的目錄,在你用的時候才是包名。如:fmt.Println,這里的fmt才是包名。
萬事俱備,只欠東風。就差運行了,讓我們來構建一個Run/Debug Configuration。
GoLand中,運行Go有三種方式:
1、文件方式運行(File)
以單個文件的方式運行,最為簡單,直接可以右擊要運行的文件,選擇Run或者Debug,則可以直接運行程序。
運行結果如下:
那右擊后GoLand都做些什么了?其實運行所有程序都要配置Run\Debug Configurations的,只不過右擊文件運行,GoLand幫你新建了一個默認的運行配置文件,我們來看下這個配置文件。在右上方,可以看到配置的地方,如果之前沒有任何配置的話,會提示你Add Configurations,如果之前有過配置,會出現下拉框讓你選擇配置或者Edit Configurations,我剛把自動生成的配置給刪掉了,現在重新手動添加一個,點Add Configurations。
然后選擇"+”->Go Build,如下圖:
默認的方式已Package的方式,這時我們選擇Run Kind模式為File。
配置的名稱可以自己隨意定義,這里我們用默認的。
Files選擇你要運行的那個文件全路徑。
Output direcory就是build后生成exe文件所在目錄。這里我們選擇一開始新建的bin目錄。
Run after build選項我們勾一下,表示在編譯完成后,直接運行。否則,只編譯,不運行。配置好后,點OK,如下圖:
配置好后,點配置右邊的Run或者Debug,就可以運行和調試了。
2、以包的方式運行(Package)
配置過程同上,這里不再重復了,Package有幾個不一樣的地方,
Run kind選擇Package
Package path輸入你main函數所在的包名,其他保持不變,這樣就以包的方式去運行和調試了。如下圖:
3、以整個目錄的方式運行(Directory)
配置過程同上,這里不再重復了,Package有幾個不一樣的地方,
Run kind選擇Directory
Directory輸入你main函數所在的目錄,其他保持不變,這樣就以包的方式去運行和調試了。如下圖:
這里有幾個需要注意的地方:
1、不管你是以什么方式運行,你所要運行的入口,即main方法的所屬包名(package)必須是"main"!如下所示:
到這里,我們就可以開發和調試一個簡單的項目了,下面我們說一下如何引用第三方包。
三:引用第三方包
在go.mod文件中加入第三方包的名稱和版本,如果有多個的話,用括號=()括起來,如下圖。這時,Goland就會在網上把包下載下來,保存在一開始
我們設置的Module GOPATH路徑下pkg文件夾下。如果沒有則創建文件夾。這個時候,我們只是下載了第三方包,還沒有去引用它,所以還沒有在External Libraries中有所體現。
接下來我們在程序中引用包,import后,會發現goland識別不了,這時我們把光標移動到紅色位置,然后同時按下Alt+Enter,Goland會智能提示你需要同步包,我們點同步。
這時包已經同步下來了,在之前配置代理的時候要設置成https://goproxy.io,否則下載會非常緩慢。同步好后,會發現左邊的External Libraries中已經存在這個包了。這個時候我們就可以在程序中使用包了,如下圖:
當前只使用了一種導入包的用法,后續再更新其他方式的引入包方法。