三、Go環境安裝

3.1、Go編譯器的下載

 官網://golang.google.cn/
go中文網://studygolang.com/dl

3.2、安裝 for Mac

3.2.1、 mac系統下安裝SDK

image-20220719160916965

截屏2022-07-19 15.44.41

截屏2022-07-19 15.45.31

安裝完成以後可以使用終端軟體(例如iTerm)中輸入go version查看Go編譯器的版本資訊

3.2.2、 mac系統下配置GOPATH

開發包安裝完成後,我們還需要配置一下GOPATH 環境變數,之後才可以使用Go語言進行開發。GOPATH是開發人員編寫Go程式的工作空間路徑,也就是存放Go程式碼的地方

在終端中運行 vi ~/.bash_profile 添加下面這行程式碼

export GOPATH=$HOME/goWork

保存然後退出你的編輯器。然後在終端中運行下面命令

source ~/.bash_profile

提示:HOME是每個電腦下的用戶主目錄,每個電腦可能不同,可以在終端運行echoHOME 獲取

然後保存並退出編輯器,運行 source ~/.bash_profile 命令即可。

3.3 安裝 for Window

3.3.1、window系統下安裝SDK

雙擊我們下載好的Go語言開發包即可啟動安裝程式,如下圖所示,這是Go語言的用戶許可協議,無需管它,直接勾選「I accept …」然後點擊「Next」即可。

img

img

在 Windows 系統下Go語言開發包會默認安裝到 C 盤的 Go 目錄下,推薦在這個目錄下安裝,使用起來較為方便。當然,你也可以選擇其他的安裝目錄,確認無誤後點擊「Next」,如下圖所示:

img

Go語言開發包的安裝沒有其他需要設置的選項,點擊「Install」即可開始安裝,如下圖所示:

img

等待程式完成安裝,然後點擊「Finish」退出安裝程式。

img

安裝完成後,在我們所設置的安裝目錄下將生成一些目錄和文件,如下圖所示:

img

在默認情況下,win系統下Go 將會被安裝在目錄 c:\go 下,但如果你在安裝過程中修改安裝目錄,則需要手動修改所有的環境變數的值。

通過go env命令可以查看環境變數的所有情況。值得一提的是,GOROOT 表示 Go 開發包的安裝目錄。

中國Go語言庫鏡像://github.com/goproxy/goproxy.cn 在終端輸入:go env -w GOPROXY=//goproxy.cn,direct對代理進行修改。

GOPROXY //proxy.golang.org,direct

阿里云: export GOPROXY=//mirrors.aliyun.com/goproxy/

七牛云: export GOPROXY= //goproxy.cn

go env -w 「GO111MODULE=off」 // 關閉go mod

3.3.2、window系統下配置GOPATH

GOPATH 是 Go語言中使用的一個環境變數,它使用絕對路徑提供項目的工作目錄(workspace)。

GOPATH下創建src文件夾,即存放Go項目程式碼的位置。

開發包安裝完成後,我們還需要配置一下GOPATH 環境變數,之後才可以使用Go語言進行開發。GOPATH是開發人員編寫Go程式的工作空間路徑,也就是存放Go程式碼的地方。 在桌面或者資源管理器右鍵「此電腦」(或者「我的電腦」)→「屬性」→「高級系統設置」→「環境變數」,如下圖所示。

img

在彈出的菜單里找到 GOPATH 對應的選項點擊編輯之後就可以修改了,沒有的話可以選擇新建,並將變數名填寫為 GOPATH,變數值設置為任意目錄均可(盡量選擇空目錄),例如 F:\GoWork。

img

GOPATH對應創建的文件夾中裡面,手動創建如下3個目錄

image-20210315120607129

src 存儲go的源程式碼 (需要我們自己動手創建)

pkg 存儲編譯後生成的文件(自動生成)

bin 存儲生成的可執行文件 (自動生成)

3.4、第一個Go程式

package main //聲明文件所在的包,每個go文件必須有歸屬的包

import "fmt" // 引入程式中需要的用的包,為了使用包下的函數,比如: Println

func main() { //main 主函數, 程式的入口
	fmt.Println("hello word") // 在控制台列印輸出一句話,雙引號中的內容會原樣輸出

}

  1. 程式沒有涉及到自定義包調用時可以放在電腦任何位置
  2. 為了以後方便管理,我們暫時統一放在gopath的src下
  3. 後面會學習go mod更好進行包管理

3.4.1、程式語法解析

(1) main包和main函數

Go語言以「包」作為管理單位,每個 Go 源文件必須先聲明它所屬的包,所以我們會看到每個 Go 源文件的開頭都是一個 package 聲明。Go語言的包與文件夾是一一對應的。一個Go語言程式必須有且僅有一個 main 包。main 包是Go語言程式的入口包,如果一個程式沒有 main 包,那麼編譯時將會出錯,無法生成可執行文件。

(2) import

在包聲明之後,是 import 語句,用於導入程式中所依賴的包,導入的包名使用雙引號""包圍,格式如下:

import "name"

其中 import 是導入包的關鍵字,name 為所導入包的名字。

導入的包中不能含有程式碼中沒有使用到的包,否則Go編譯器會報編譯錯誤

也可以使用一個 import 關鍵字導入多個包,此時需要用括弧( )將包的名字包圍起來,並且每個包名佔用一行

import(
    "p1"
    "p2"
)

3.4.2、程式編譯執行

Go語言是像C語言一樣的編譯型的靜態語言,所以在運行Go語言程式之前,先要將其編譯成二進位的可執行文件。

可以通過Go語言提供的go build或者go run命令對Go語言程式進行編譯:

(1) go build命令可以將Go語言程式程式碼編譯成二進位的可執行文件,但是需要我們手動運行該二進位文件;

1、如果是普通包,當你執行go build之後,它不會產生任何文件。【非main包】

2、如果是main包,當你執行go build之後,它就會在當前目錄下生成一個可執行文件,比如win系統的exe文件

3、你也可以指定編譯輸出的文件名。我們可以指定go build -o 可執行文件.exe

(2)除了使用go build命令外,Go語言還為我們提供了go run命令,go run命令將編譯和執行指令合二為一,會在編譯之後立即執行Go語言程式,但是不會生成可執行文件。

 
go run go文件名   // go文件名稱不能為空

3.5、IDE的安裝與使用

3.5.1、安裝Goland

GoLand是Jetbrains公司推出專為Go開發人員構建的跨平台IDE,可以運行在Windows,Linux,macOS系統之上,

下載地址://www.jetbrains.com/go/download/#section=windows

截屏2022-07-20 15.25.45

下載完成之後便可以進行安裝了

截屏2022-07-20 18.39.14

截屏2022-07-20 18.39.26

截屏2022-07-20 18.39.46

截屏2022-07-20 18.39.59

截屏2022-07-20 18.43.07

截屏2022-07-20 18.44.16

因為GoLand是收費的IDE,同時也提供了30天免費試用的方式。如果經濟能力允許的話,可以從指定渠道購買正版GoLand. GoLand提供了Jetbrains Account,Activition Code和License Server三種激活方式,使用前必須激活或者選擇免費試用 當激活或者選擇免費試用之後便會啟動GoLand。

免費試用需要點擊log in,進行賬戶註冊(在PC端完成),然後登陸,即可試用30天

截屏2022-07-20 15.45.56

此時可以選擇New Project在指定的路徑創建新的項目目錄或者選擇Open打開已經存在的項目目錄,進行編輯。

3.5.2、GoLand下編寫Go程式

當GoLand啟動後,便可以使用它來編寫Go程式了。首先選擇New Project創建一個項目。然後設置項目路徑和GOROOT

截屏2022-07-20 15.49.47

截屏2022-07-20 15.55.22

然後點擊create創建。

image-20220720155651723

創建文件和文件夾:

截屏2022-07-20 16.01.55

goland安裝好後沒有編譯器的單獨配置go編譯器路徑:

截屏2022-07-20 16.04.55

3.5.3、IDE的快捷鍵

快捷鍵 作用
Ctrl + / 單行注釋
Ctrl + Shift + / 多行注釋
Ctrl + D 複製當前游標所在行
Ctrl + X 刪除當前游標所在行
Ctrl + Alt + L 格式化程式碼
Ctrl + Shift + 方向鍵上或下 將游標所在的行進行上下移動(也可以使用 Alt+Shift+方向鍵上或下)
Ctrl + Alt + left/right 返回至上次瀏覽的位置
Ctrl + R 替換
Ctrl + F 查找文本
Ctrl + Shift + F 全局查找

3.5.4、控制台摺疊多餘資訊

image-20220722112303208

image-20220722112534240

image-20220722112629909

Tags: