跟着老貓來學GO——環境搭建教程
老貓的GO學習系列部落格已經正式發車了,相信大家以前學習一門程式設計語言的時候也有經驗,咱們一般都是從環境開始,在此呢,大家也跟着老貓從最開始的搭建環境開始。
首先呢,我們開始需要下載下傳GO語言的安裝包。GO國外的官網位址是https://golang.org/,當然這個僅限于有條件的小夥伴去官網下載下傳了。我們一般下載下傳呢都有所限制,不過沒關系,在國内其實也有對應的網站為https://golang.google.cn/。還有一個網站中也可以下載下傳,差不多是一個GO語言的學習社群,位址為https://studygolang.com/dl。比較推薦後者,相關的中文英文文檔也是比較全的。通路https://studygolang.com/dl打開是這樣的:
大家根據自己的環境,選擇對應的安裝包一步步安裝即可。這個太簡單了,就不展開了。
安裝完畢之後,大家在指令行運作go version指令得到相關的版本資訊,那麼就安裝完成了。老貓由于之前就已經安裝過了,目前不是那個最新的版本,是以安裝完畢之後的版本資訊如下。
關于go環境搭建的過程中比較重要的一點是鏡像的配置,大家輸入指令go env 可以看到相關go 語言的環境的一些配置。
老貓目前的計算機環境是windows,是以看到的資訊如上,上面有一個比較重要的屬性資訊叫做goproxy,老貓目前的設定是https://goproxy.cn,direct,大家安裝完畢之後預設的位址應該是https://proxy/golang.org,direct。那麼這個配置到底是做什麼的呢?其實很簡單,可以類比maven,這個其實也是一個依賴,配置這個代理資訊之後,就會從遠端的倉庫拉取相關的go所需要依賴。後面的direct表示如果前者不能提供所需要的依賴那麼我們可以重新從其他第三方擷取依賴,比如配置成某github的依賴。
大家如果網絡上沒有條件的話,配置成預設的位址應該是無法拉取相關的依賴的,是以在此呢,最好配置成我們國内的鏡像。
老貓配置國内鏡像其實主要參考這個網址:https://goproxy.cn/,打開之後,上面有詳細的設定命名的,大家照着上面設定即可,當然這裡有個坑點就是咱們的go的版本号必須是1.13以上,當然如果是下載下傳的最新安裝包的小夥伴其實是沒有這個問題的。
上面的截圖中我們其實還看到一個比較重要的屬性,就是GO111MODULE,老貓查詢了其他的一些資料。
在go1.11版本以前,想要對GO語言進行包管理,隻能依賴第三方的庫進行實作,比如Vendor,GoDep等等。但是在這之後,我們就可以根據這個開關來實作包管理。
GO111MODULE這個開啟或者關閉主要有三個值可以選擇:off、on 、auto,預設值是個“”,其實也就是auto。
GO111MODULE=off 無子產品支援,go會從GOPATH和vendor檔案尋找包。
GO111MODULE=on 子產品支援,go會忽略gopath和vendor檔案夾,隻根據go.mod下載下傳依賴。
GO111MODULE=auto在$GOPATH/SRC外面且根目錄有go.mod檔案時開啟子產品支援。
以上這些描述其實聽下來感覺是一知半解的樣子,在此其實也不用過多去糾結,因為在後面深入的過程中,我們就會慢慢領會了。當然後續老貓在和大家分享“依賴管理”的時候會和大家深入地去探讨一下。在此呢,我們将其屬性設定成on。設定的指令上面也有。比較需要注意的是,在設定的時候大家需要設定成小寫的on才行,不要手誤操作錯了。
上面介紹了相關go環境的配置其實到此已經OK了,那麼下面咱們就可以挑選一個比較趁手的工具開始配置完之後撸代碼了。其實go相關的開發工具有很多,比如vi,emacs,idea,eclipse,vscode,sublime..+go插件。當然IDE系列的也有goland的,大家也可以去官網進行下載下傳。老貓接下來會其中一種開發工具,IDEA+GO插件的方式,由于老貓是JAVA後端,用慣了IDEA,是以在此也就先介紹這款配置。當然其他開發工具的相關配置,大家可以自行去度娘或者谷歌去找一下。
第一個插件當然是go插件,具體如下:
這是老貓本地的環境,已經安裝完畢了。
另外一個插件是File Watcher,大家可以自行像上面那樣搜尋之後進行install。這個工具其實是一個自動格式化的工具,當我們儲存檔案的時候就會按照GO語言的标準進行格式化了。
安裝完畢之後我們重新開機IDEA,然後建立一個GO項目,來寫一個GO版本的HELLO WORLD。具體如下
我們需要建立一個GO MODULE的項目,此處有個主意點就是proxy的時候,它預設會是default,我們将其改成https://goproxy.cn,direct即可,當然這個路徑就是我們上面所配置的代理。由于項目暫時不涉及SQL,是以我們直接下一步并且取名完成即可。
大家可以看一下老貓的項目。
注意點,這裡進行new檔案的時候,選擇simpleApplication類型的,點選運作,砸門的helloworld就顯示在控制台上了。
上面老貓說的file watcher插件目前是不生效的,其實我們還要進行設定一下,具體設定如下。
首先我們需要将該設定去除。
然後咱們重新搜尋file watcher選中之後點選+号,添加goimports插件,如果說沒有看到goimports插件,大家切換到指令行輸入:go get -v golang.org/x/tools/cmd/goimports即可。
像老貓這樣添加完畢之後,然後重新開機IDEA即可。怎麼進行驗證安裝成功了呢,其實很簡單,隻要在後面的括号前面加上一個空格,然後儲存一下就能看到效果了。
跟着老貓做完這些,其實大家就已經可以運作出hello world了。後面老貓會慢慢和大家介紹相關GO語言的文法、容器等等。别掉隊哦!當然有什麼疑問也歡迎大家關注老貓的公衆号“程式員老貓”。大家一起探讨,一起進步。
熱愛技術,熱愛産品,熱愛生活,一個懂技術,懂産品,懂生活的程式員~
更多精彩内容,可以關注公衆号“程式員老貓”。
一起讨論技術,探讨一下點子,研究研究賺錢!