[TOC] ## 本篇概要 搭建go語言環境,除了要搭建go語言的編譯環境,還要搭建go語言的集成開發環境,為此需要選擇go語言的集成開發環境的工具,這就是“工於善其事,必先利其器”,可以大大加快自己的開發進度。 ## 集成開發環境工具(ide) 這裡我主要介紹從我2016年開始學習go語言以來使用 ...
目錄
本篇概要
搭建go語言環境,除了要搭建go語言的編譯環境,還要搭建go語言的集成開發環境,為此需要選擇go語言的集成開發環境的工具,這就是“工於善其事,必先利其器”,可以大大加快自己的開發進度。
集成開發環境工具(ide)
這裡我主要介紹從我2016年開始學習go語言以來使用過的go語言的所有集成開發環境工具,如果你對這段沒有興趣,可以直接跳過。
Goland或IntelliJ IDEA
這是我較早使用的集成開發環境工具,Goland或IntelliJ IDEA等JetBrains產品是非常優秀的go語言集成開發環境工具,其中IntelliJ IDEA更是一個幾乎所有主流語言的集成開發環境工具。
Goland或IntelliJ IDEA是目前我用過的最好的go語言集成開發環境,它比其他開發環境優秀的地方是對於go語言介面的完美支持。它不僅可以快速檢索哪些go語言的機構體實現了一個go語言介面,而且能快速檢索一個go語言的機構體是否實現某個go語言介面,而其他集成開發環境並不能完美做到這一點(事實上這點很重要,go語言是面向介面的,而且是隱式的)。如果你是一個初學go語言的開發者,我強烈推薦你使用這個集成開發環境工具!另外,它配置非常簡單,對新進的開發者也極其友好,你肯定會喜歡上它的開發環境和插件。
但是這個工具的唯一缺點就是每年需要你投入一定的資金(現在第一年US $99.00)購買許可證,當然每年的許可費用會越來越便宜,另外如果你是學生,可以免費白嫖這個工具。
Visual Studio Code
Visual Studio Code簡稱vscode,這是我現在使用的集成開發環境,而且是雖然它不如Goland或IntelliJ IDEA,但是它支持go語言google開發團隊開發的官方語言伺服器gopls,在go語言1.13時代之後官方語言伺服器gopls已經逐步替代了許多其他的go語言工具,另外我覺得Visual Studio Code是目前免費go語言集成開發工具做的最好的,由於它對官方語言伺服器的支持,為此Visual Studio Code在go語言編程時支持go mod依賴,代碼補全,語義檢查等等方面支持都很好。
其他集成開發環境
其他的我還使用過的ide工具,如[sublime text 3](sublime text 3)以及LiteIDE,就不詳細介紹了。
另外,還有我沒使用過但聽過的go語言集成開發環境,Eclipse,Atom,Emacs。
Visual Studio Code的go語言開發環境搭建
這裡主要介紹了windows操作系統的搭建
Visual Studio Code安裝
可以從官網下載Visual Studio Code,註意:下載可能會很慢
按照指引,點擊下一步
註意選擇以上並且不斷點擊下一步即可完成安裝
go編譯環境安裝
從go安裝軟體官網下載合適的go編譯環境,例如本次我下載的版本是go1.20.7.windows-amd64.msi,需要註意的是go語言的鏡像官網不僅僅提供下載,請好好探索一下它,後面的篇章中我還會詳細提及它的強大作用。
同意協議後,選擇安裝路徑,請記住這個路徑,然後按next完成安裝
配置go環境變數
右擊電腦,點擊屬性後出現以下頁面
點擊高級選項,如下點擊
如下點擊新建環境變數
- 變數名:GOROOT 變數值:E:\lang\go ,這是go語言的編譯環境安裝目錄,如上所示。
- 變數名:GO11MODULE 變數值:on,這是go語言的第三方模塊依賴的。
- 變數名:GOPROXY 變數名:https://goproxy.cn,direct , 這是go語言的代理,用於能夠正常訪問一些Google的go語言的資源。
- 變數名:GOPATH 變數名:E:\projects 這是go語言的項目位置。
如下圖將%GOROOT%\bin加入path
之後不斷確認你打開的所有視窗,建議重啟後,使用win+R打開cmd輸入以下命令檢查是否正常安裝
go version
go version go1.20.7 windows/amd64
安裝go語言插件
在vscode插件市場選擇go語言
安裝完後選擇編輯go語言插件配置
直接在json文件中編輯
如下:
{
"go.gopath": "E:\projects"
}
在E:\projects下建立如下文件夾bin,pkg, src
-----+---bin
+---pkg
+---src
安裝go語言插件的依賴軟體,使用Ctil+Shift+P
選擇安裝所有插件
以下是安裝完的場景
使用golang編程
在E:\projects\src下建立如下文件github.com/Breeze0806/test/main.go
-----+--bin
+--pkg
+--src--+--github.com--+--Breeze0806--+--test--+--main.go--
另外加入vscode的項目配置,在.vscode/setting.json配置以下項目:
{
"go.formatTool": "goimports",
"go.lintOnSave": "package",
"go.vetOnSave": "package",
"go.useLanguageServer": true,
"[go]": {
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": true,
},
// Optional: Disable snippets, as they conflict with completion ranking.
"editor.snippetSuggestions": "none",
},
"[go.mod]": {
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": true,
},
},
"gopls": {
// Add parameter placeholders when completing a function.
"usePlaceholders": true,
// If true, enable additional analyses with staticcheck.
// Warning: This will significantly increase memory usage.
"staticcheck": false,
},
"go.languageServerFlags": [
"-rpc.trace", // for more detailed debug logging
"serve",
"--debug=localhost:6060", // to investigate memory usage, see profiles
],
"go.coverOnSave": true,
"go.coverOnSingleTest": true,
"go.coverOnSingleTestFile": true,
"go.coverShowCounts": true,
"go.testOnSave": false,
"go.testFlags": [],
"go.lintTool": "golint"
}
在main.go中寫入以下程式
package main
func main(){
fmt.Println("Hello")
}
使用go mod 命令建立項目
go mod init github.com/Breeze0806/test
go mod tidy
go run main.go
如圖test目錄下多了go.mod,輸出結果為Hello
本篇小結
本篇討論了go語言的當前所有的集成開發環境,並且介紹了Visual Studio Code的windows操作系統下的go語言開發環境搭建,那麼其他操作系統有沒有辦法搭建?有的,由於樓主使用的windows系統,其實unbuntu或者mac的搭建方式類似。
本篇小結
本篇討論了go語言的當前所有的集成開發環境,並且介紹了Visual Studio Code的windows操作系統下的go語言開發環境搭建,那麼其他操作系統有沒有辦法搭建?有的,由於樓主使用的windows系統,其實unbuntu或者macos的搭建方式類似,
下篇預告
《go語言的數據類型那點事》