新年伊始。
嘗試go語(yǔ)言。
Go語(yǔ)言是Google內(nèi)部主推的語(yǔ)言,它作為一門(mén)全新的靜態(tài)類(lèi)型開(kāi)發(fā)語(yǔ)言,與當(dāng)前的開(kāi)發(fā)語(yǔ)言相比具有許多令人興奮不已的新特性。專(zhuān)門(mén)針對(duì)多處理器系統(tǒng)的應(yīng)用程序編程進(jìn)行了優(yōu)化,使用go語(yǔ)言完全可以媲美c、c++的速度,而且更加安全、簡(jiǎn)潔,支持并行進(jìn)程。
以下是go語(yǔ)言的主要特性:
1、自動(dòng)垃圾回收
2、更豐富的內(nèi)置類(lèi)型
3、函數(shù)多反回值
4、錯(cuò)誤處理
5、匿名函數(shù)和閉包
6、類(lèi)型和接口
7、并發(fā)編程
8、反射
9、語(yǔ)言交互性
以上基本都屬?gòu)U話(huà),搭建開(kāi)發(fā)環(huán)境盡快開(kāi)啟編程之旅才是王道,筆者使用的是mac系統(tǒng),因此介紹下mac下golang的環(huán)境搭建。
google官網(wǎng)被墻下載地址如下: http://www.golangtc.com/download ,下載最新的安裝包,之后雙擊安裝即可。
安裝完成之后,打開(kāi)終端,輸入go、或者go version(查看安裝版本)出現(xiàn)如下信息即表示安裝成功:
zhangqiangdeMacBook-PRo:gg zhangqiang$ go version
go version go1.8beta1 darwin/amd64
2、配置環(huán)境變量
安裝完sdk之后接下來(lái)便是配置環(huán)境變量了,打開(kāi)終端輸入cd ~ 進(jìn)入用戶(hù)主目錄,之后輸入ls -all命令查看是否存在.bash_profile
文件,存在既使用vim .bash_profile打開(kāi)并編輯該文件。根據(jù)自己實(shí)際情況,內(nèi)容如下:
export GOPATH=/Users/zhangqiang/goexport GOBIN=$GOPATH/binexport PATH=$PATH:$GOBINGOPATH:日常開(kāi)發(fā)的根目錄。GOBIN:是GOPATH下的bin目錄。
且需要gobin目錄加入到path路徑下,生成的可執(zhí)行文件就可以直接運(yùn)行了。
退出vim,使用source ~/.bash_profile即可完成對(duì)golang環(huán)境變量的配置了,可以在終端中輸入go env查看配置后的效果:
zhangqiangdeMacBook-Pro:~ zhangqiang$ go env
GOARCH="amd64"
GOBIN="/Users/zhangqiang/go/bin"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/zhangqiang/go"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/p2/z4cgb3kd3mldyl7fxm6jjv3w0000gn/T/go-build485816814=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
3、開(kāi)發(fā)工具配置(sublime text)
這里筆者選用的是sublime text安裝gosublime插件進(jìn)行開(kāi)發(fā)(golang語(yǔ)法高亮提示),安裝方式這里就不多提了。
goProject是go的workspace。
配置好開(kāi)發(fā)環(huán)境之后,簡(jiǎn)單的進(jìn)行一下go語(yǔ)言的開(kāi)發(fā)。在你的gopath下的src目錄下,新建一個(gè)文件夾(以項(xiàng)目名稱(chēng)命名,這里是gg),然后在sublime中打開(kāi)該文件夾,新建main.go文件即可以進(jìn)行編碼了。
package mainimport ( "fmt")func main() { fmt.Println("hello zhangqiang!");}代碼編寫(xiě)完成之后,使用command+b打開(kāi)sublime text終端,使用go build gg(項(xiàng)目名稱(chēng))對(duì)其進(jìn)行編譯,編譯通過(guò)的結(jié)果信息如下
[ `go build hello_world` | done: 599.030542ms ] [ ~/goProject/src/hello_world/ ] #
提示編譯成功之后,再執(zhí)行shell命令,執(zhí)行剛剛編譯之后的文件./gg即可看到運(yùn)行結(jié)果:
[ `./hello_world` | done: 23.823761ms ] hello world!如果僅僅是只需要看到運(yùn)行的結(jié)果,而不產(chǎn)生可執(zhí)行文件(文件名和項(xiàng)目名一樣)則在sublime text終端中直接使用go run xxx.go即可:
[ `go run gg.go` | done: 553.566407ms ] hello world!到目前為止,我們已經(jīng)安裝好了開(kāi)發(fā)golang程序的基本環(huán)境,可以開(kāi)心的享受golang的奇妙之處了!
注意:
1:在GOPATH的src路徑中,建在執(zhí)行中,經(jīng)常遇到
can't load package: package gg: no buildable Go source files in /Users/zhangqiang/go/src/gg 錯(cuò)誤,
經(jīng)過(guò)2個(gè)小時(shí)的排查,發(fā)現(xiàn),創(chuàng)建的main.go文件,并不是main.go,而是main.go.txt文件,原因是我用的是txt文本編輯器,默認(rèn)是txt的后綴名,只是給隱藏了。需要下載類(lèi)似sublime text的軟件,編輯go代碼。
2:需要安裝gosublime插件,目前它需要將sublime text升級(jí)到3,才行。下載地址:https://www.sublimetext.com/3
3: 在gosublime的終端執(zhí)行g(shù)o,而不是mac的自帶終端。command+b打開(kāi)sublime text終端
參考文獻(xiàn):
http://www.linuxidc.com/Linux/2015-05/117283.htm
http://www.tuicool.com/articles/Fv6zUfE
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注