安裝go及配置go 安裝go 寫這篇博客時,我的電腦的windows已經安裝過了go,用的是標準包安裝,不過我的linux操作系統還沒安裝,可以考慮用第三方工具安裝,因為看了goweb這本書,我才知道安裝go有三種方式。這本書對三種操作系統的安裝方式都有介紹 Go源碼安裝:這是一種標準的軟體安裝方式 ...
安裝go及配置go
安裝go
寫這篇博客時,我的電腦的windows已經安裝過了go,用的是標準包安裝,不過我的linux操作系統還沒安裝,可以考慮用第三方工具安裝,因為看了goweb這本書,我才知道安裝go有三種方式。這本書對三種操作系統的安裝方式都有介紹
- Go源碼安裝:這是一種標準的軟體安裝方式。對於經常使用Unix類系統的用戶,尤其對於開發者來說,從源碼安裝可以自己定製。
- Go標準包安裝:Go提供了方便的安裝包,支持Windows、Linux、Mac等系統。這種方式適合快速安裝,可根據自己的系統位數下載好相應的安裝包,一路next就可以輕鬆安裝了。推薦這種方式
- 第三方工具安裝:目前有很多方便的第三方軟體包工具,例如Ubuntu的apt-get和wget、Mac的homebrew等。這種安裝方式適合那些熟悉相應系統的用戶。
如果你想在同一個系統中安裝多個版本的Go,你可以參考第三方工具GVM,這是目前在這方面做得最好的工具,除非你知道怎麼處理。
Windows系統用戶按Win+R運行cmd,輸入systeminfo
後回車,稍等片刻,會出現一些系統信息。在“系統類型”一行中,若顯示“x64-based PC”,即為64位系統;若顯示“X86-based PC”,則為32位系統。
蘋果的我沒細看,因為我沒蘋果的,O(∩_∩)O哈哈~
這有教如何在linux上配置環境變數,真好!,安裝的是gvm第三方工具。早知道第三方這嗎好,我當時就在Windows上安裝第三方工具了,不過其實頁無所謂了,這並不影響我在Windows上使用go
export GOROOT=/usr/local/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
export GOPATH=$HOME/gopath (可選設置)
go的特點
Go是一種新的語言,一種併發的、帶垃圾回收的、快速編譯的語言。它具有以下特點:
- 它可以在一臺電腦上用幾秒鐘的時間編譯一個大型的Go程式。
- Go為軟體構造提供了一種模型,它使依賴分析更加容易,且避免了大部分C風格include文件與庫的開頭。
- Go是靜態類型的語言,它的類型系統沒有層級。因此用戶不需要在定義類型之間的關係上花費時間,這樣感覺起來比典型的面向對象語言更輕量級。
- Go完全是垃圾回收型的語言,併為併發執行與通信提供了基本的支持。
- 按照其設計,Go打算為多核機器上系統軟體的構造提供一種方法。
Go是一種編譯型語言,它結合瞭解釋型語言的游刃有餘,動態類型語言的開發效率,以及靜態類型的安全性。它也打算成為現代的,支持網路與多核計算的語言。要滿足這些目標,需要解決一些語言上的問題:一個富有表達能力但輕量級的類型系統,併發與垃圾回收機制,嚴格的依賴規範等等。這些無法通過庫或工具解決好,因此Go也就應運而生了。
go 命令依賴一個重要的環境變數:$GOPATH
GOPATH允許多個目錄,當有多個目錄時,請註意分隔符,多個目錄的時候Windows是分號,Linux系統是冒號,當有多個GOPATH時,預設會將go get的內容放在第一個目錄下。
GOPATH
以上 $GOPATH 目錄約定有三個子目錄:
- src 存放源代碼(比如:.go .c .h .s等)
- pkg 編譯後生成的文件(比如:.a)
- bin 編譯後生成的可執行文件(為了方便,可以把此目錄加入到 $PATH 變數中,如果有多個gopath,那麼使用${GOPATH//://bin:}/bin添加所有的bin目錄)
註意:一般建議package的名稱和目錄名保持一致
這講了一個如何安裝和編譯go應用,我以前沒見過這一點,他這自己寫了一個包,有安裝這個包,又掉這個包,這和在一個文件夾里寫入這個包在在該文件夾里引用這包不一樣的嘛,有點不理解這嗎做的意義。
工具和插件
實用工具:獲取遠程包:go get github.com/astaxie/beedb
go get本質上可以理解為首先第一步是通過源碼工具clone代碼到src下麵,然後執行go install,在代碼中如何使用遠程包,很簡單的就是和使用本地包一樣,只要在開頭import相應的路徑就可以import "github.com/astaxie/beedb"
到這對前面的做法好像有點懂了
go get -u 參數可以自動更新包,而且當go get的時候會自動獲取該包依賴的其他第三方包
bin目錄下麵存的是編譯之後可執行的文件,pkg下麵存放的是應用包,src下麵保存的是應用源代碼
go的相關工具真的好厲害:
go test
go build
go install
go clean
go fmt
go get
go tool
go generate
godoc
go version 查看go當前的版本
go env 查看當前go的環境變數
go list 列出當前全部安裝的package
go run 編譯並運行Go程式
一種看官方文檔方法:過命令在命令行執行 godoc -http=:埠號 比如godoc -http=:8080。然後在瀏覽器中打開127.0.0.1:8080,你將會看到一個golang.org的本地copy版本,通過它你可以查詢pkg文檔等其它內容。如果你設置了GOPATH,在pkg分類下,不但會列出標準包的文檔,還會列出你本地GOPATH中所有項目的相關文檔,這對於經常被牆的用戶來說是一個不錯的選擇。
編輯器:我的電腦上有vscode,sublime,atom和LiteIDE,我一般vscode,嘻嘻嘻,這本書對每款編輯器的相關插件做了簡單介紹。
我服了,go語言好多好用的插件安裝不上,氣!
這一章中主要介紹瞭如何安裝Go,Go可以通過三種方式安裝:源碼安裝、標準包安裝、第三方工具安裝,安裝之後我們需要配置我們的開發環境,然後介紹瞭如何配置本地的$GOPATH,通過設置$GOPATH之後讀者就可以創建項目,接著介紹瞭如何來進行項目編譯、應用安裝等問題,這些需要用到很多Go命令,所以接著就介紹了一些Go的常用命令工具,包括編譯、安裝、格式化、測試等命令,最後介紹了Go的開發工具,目前有很多Go的開發工具:LiteIDE、Sublime、VSCode、Atom、Goland、VIM、Emacs、Eclipse、Idea等工具,讀者可以根據自己熟悉的工具進行配置,希望能夠通過方便的工具快速的開發Go應用。