首頁 > 軟體

一起來用GoLand開發第一個Go程式

2022-12-25 14:01:06

前言

不同的人對於開發工具的習慣還是不一樣的,所以博主還是決定,簡單出一份關於 GoLand 的使用教學,方便於在開發過程中不同的開發習慣。

但是在此還是希望如果是剛剛入門的小白們,要明白的一點是無論是程式語言還是程式設計工具,他們都應該是處於一個可切換的狀態,並不是一門語言和一個 IDE工具 就阻擋下你的腳步,加油!

1.關於GoLand的工具

GoLand 是一款由捷克軟體開發公司 JetBrains 專為 Go 開發的跨平臺的商業 IDE。Goland 具有 Strong Code Insight、Navigation & Search、Run & Debug、Integration with VCSs、More than just a Go IDE 以及較強的 Extensibility,能夠幫助 Gopher 輕鬆愉悅方便快捷地 read 和 write Go code。

JetBrains 公司出品的 IDE,在業界有著良好的口碑,比如 CLion for C/C++、IntellijI IDEA for Java、PyCharm for Python、PhpStorm for PHP、WebStorm for JavaScript 等。Goland 一經推出,受到了廣大 Gopher 的喜愛。(當然因為敏感的原因,本教學並不教學如何破解軟體,請大家自行百度。也可以選擇使用VSCode,如有能力則可以購買正式版)

在此附上 GoLand官方下載地址 點這裡

1.1.安裝過程

  • 沒有什麼特別複雜的操作,基本點選 下一步 即可
  • 可以根據自己的習慣將專案安裝在自己想要的目錄下,儘量不要出現 中文名資料夾路徑
  • 根據自己的系統選擇安裝的型號如是64位元系統在選項介面勾選 .64 和 .go 即可

1.2.安裝完成

在安裝完成後(當然你可以先免費用一個月),就可以看到這樣的介面,就可以開始準備我們的 Go 之旅啦!

New Project: 表示新建一個專案

Open: 表示開啟一個專案

Get from VCS: 表示從版本管理器中開啟專案(SVN、Gitee、GitHub)

2.快速上手

2.1.建立專案

任何工具的第一步實際上都是要先學會如何建立一個專案,那麼我們在使用GoLand也是一樣,從建立一個專案開始。

選擇我們的 New Project ,那麼我們就會看到如下介面

選擇 Go 專案,如果選擇帶有 GOPATH 標記的則表示將專案預設建立在你設定好的 GOPATH 空間下(不懂 GOPATH 可以回看博主之前的文章)

在 GoLand 中,一個專案就可以作為一個工作空間,所以選擇 Go 則表示要將這個新建的專案作為一個獨立的工作空間進行開發

Location: 表示當前專案的位置

GOROOT: 表示你GO環境的開發包安裝位置,這個如果在環境變數已經設定好的情況下會自動幫你填寫,如果沒設定建議先設定好環境變數。

Environment: Go 的一些 mod 可能需要外網下載,因為一些不可描述的原因我們無法存取,因此可以通過設定 GOPROXY 代理來改變代理成國內的下載代理,這個可以暫時先不設定。(想設定 GOPROXY 可以檢視 VSCode 設定篇)

專案建立成功的介面

2.2.建立 .go 程式檔案

在對專案新建做完基礎講解後,我們可以開始建立我們的新 .go 檔案了

點選我們的專案 右鍵->New->Go File 選擇建立一個簡單的應用

建立 Simple application 會得到一個帶有簡單 main 函數的檔案,這是一個程式的入口

建立好的程式碼內容如下:

2.3.設定 mod 的開啟與關閉

在我們的本地環境中我們可以通過指令來設定 go mod 模組管理的開啟與關閉,而在我們的 Goland 中我們也可以通過設定來改變 go mod 的啟用,我們在使用 Goland 的時候可以開啟 go mod

Preferences ->Go ->Go Modules 進行設定,如下:

關於代理: 因我我們眾所周知一些原因,所以代理可以修改為國內,方便獲取資源,留下以下幾種資源地址

  • 注意:代理修改完,重啟 GoLand 生效
  • 阿里雲
    • https://mirrors.aliyun.com/goproxy/
  • nexus 社群提供的
    • https://gonexus.dev
  • goproxy.io 的
    • https://goproxy.io/
  • 官方提供的
    • https://proxy.golang.org
  • 七牛雲贊助支援的
    • https://goproxy.cn

是否使用 go mod 的區別:

  • 開啟mod:go env -w GO111MODULE=on ,會將包下載到 gopath 下的 pkg 下的 mod 資料夾中
  • 關閉mod:go env -w GO111MODULE=off ,會將包下載到 gopath 下的 src 下
  • go env GO111MODULE=auto 只有當前目錄在 GOPATH/src 目錄之外而且當前目錄包含 go.mod 檔案或者其子目錄包含 go.mod檔案才會啟用

2.4.用 GoLand 寫第一份程式碼

在剛剛我們已經新建了一個帶有 main.go 檔案,那麼我們接下來就需要在 main() 中寫下我們的第一份程式碼, Goland 是相對比較智慧的,很多基礎包不需要你去寫 import ,你只需要直接寫你要的工具模組,它就會自動幫你匯入相關的模組。

因此你只需要在 main 中手動輸入自己的第一份程式碼,即可!

fmt.Println("Hello Let's GO!") // 在終端列印

// 輸入相關程式碼後Goland就會自動幫你匯入`fmt`

點選執行按鈕(在右上角有一個綠色的▶️)

得到執行結果

2.5.程式碼靜態檢測(此部分非必要)

我們之前有說過,Go 語言對於程式碼的檢測和格式是有自己官方的統一規範和自動化的,所以就減少了出現不同程式不同的程式碼風格導致相互之間可閱讀性降低的問題。

使用 GoLand 編寫 Go 程式碼時,可以配合 gofmt + goimports + golangci-lint 在儲存時完成對程式碼的格式化和質量檢測。

開啟 go fmt: 在每次儲存程式碼檔案時自動格式化程式碼。

File > Settings > Tools > File Watchers > + > go fmt

開啟 goimports 在每次儲存程式碼時自動新增缺失的和刪除未參照的包。

File > Settings > Tools > File Watchers > + > goimports

如果遇到 tools 工具沒安裝, Goland 則會提醒你安裝

如果安裝失敗,則可能是國內代理的原因,請修改代理(這裡不再重複贅述,可參考前一篇文章內容)

**開啟 golandci-lint: ** 開啟 golangci-lint 可以對程式碼進行靜態檢查,比如報告函數行數超標、檔案行數超標等來幫助規範程式碼

File > Settings > Tools > File Watchers > + > golangci-lint

至此,工具安裝完成!

3.GoLand常用快捷鍵

檔案相關快捷鍵:

  • CTRL + E: 開啟最近瀏覽過的檔案
  • CTRL + SHIFT + E: 開啟最近修改的檔案
  • CTRL + N: 可以快速開啟struct結構體
  • CTRL + SHIFT + N: 可以快速開啟檔案

程式碼格式化

  • CTRL + ALT + T: 可以把程式碼包在一個快哪,例如 if {…} else {…}
  • CTRL + ALT + L: 格式化程式碼
  • CTRL + SPACE: 程式碼提示
  • CTRL + /: 單行註釋。CTRL+SHIFT+/:多行註釋
  • CTRL + B: 快速開啟遊標處的結構體或者方法
  • CTRL + " + / - ": 可以將當前方法進行展開或摺疊

查詢和定位

  • CTRL + R:替換文字
  • CTRL + F:查詢文字
  • CTRL + SHIFT + F:進行全域性查詢
  • CTRL + G: 快速定位到某行

程式碼常用

  • ALT + Q: 可以看到當前方法的宣告。
  • SHIFT + ENTER: 可以向下插入新行。即使遊標在當前行的中間
  • CTRL + Backspace: 按單詞進行刪除或刪除遊標所在行
  • CTRL + X剪下當前遊標所在行
  • CTRL + D:複製當前遊標所在行。
  • ALT + SHIFT+UP/DOWN:可以將遊標所在行的程式碼上下移動。
  • CTRL + SHIFT+U:可以將選中內容進行大小寫轉化。

寫在最後

本文主要是教學基本的 GoLand 使用,以及如何使用該工具開發第一個Go程式,以上為個人分享,如有問題請指正!(還是提醒各位入門的同好們,工具無論是GoLand或是VSCode並沒有絕對的高下之分)

到此這篇關於用GoLand開發第一個Go程式的文章就介紹到這了,更多相關GoLand開發Go程式內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com