對
專注于為中小企業(yè)提供網(wǎng)站制作、網(wǎng)站設(shè)計服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)銅官免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了成百上千企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
選擇Go語言的原因可能會有很多,關(guān)于Go語言的特性、優(yōu)勢等,我們在之前的文檔中也已經(jīng)介紹了很多了。但是最主要的原因,應(yīng)該是基于以下兩方面的考慮:
執(zhí)行性能,縮短API的響應(yīng)時長,解決批量請求訪問超時的問題。在Uwork的業(yè)務(wù)場景下,一次API批量請求,往往會涉及對另外接口服務(wù)的多次調(diào)用,而在之前的PHP實現(xiàn)模式下,要做到并行調(diào)用是非常困難的,串行處理卻不能從根本上提高處理性能。
而GO語言不一樣,通過協(xié)程可以方便的實現(xiàn)API的并行處理,達到處理效率的最大化。依賴Golang的高性能HTTPServer,提升系統(tǒng)吞吐能力,由PHP的數(shù)百級別提升到數(shù)千里甚至過萬級別。
開發(fā)效率,GO語言使用起來簡單、代碼描述效率高、編碼規(guī)范統(tǒng)一、上手快。通過少量的代碼,即可實現(xiàn)框架的標準化,并以統(tǒng)一的規(guī)范快速構(gòu)建API業(yè)務(wù)邏輯。能快速的構(gòu)建各種通用組件和公共類庫,進一步提升開發(fā)效率,實現(xiàn)特定場景下的功能量產(chǎn)
從c
c++轉(zhuǎn)go語言,非常簡單。需要了解的也就是語法問題。好在go語法也非常簡練,不像python有非常多的語法糖。而且go有自帶的資源回收機制,在多線程服務(wù)端開發(fā)方面,設(shè)計簡單非常多。同時支持比線程更輕量級的攜程,調(diào)用也非常簡單。不像c語言創(chuàng)建線程進城語言參數(shù)復(fù)雜的系統(tǒng)調(diào)用。
brew install go
輸入 brew info go 或者 go env 即可查看當前安裝的golang版本信息
注意:千萬不要把GOPATH設(shè)置成go的安裝路徑,可以自己在用戶目錄下創(chuàng)建一個目錄,例如mygo
一般安裝好go之后,使用go env查看一下當前環(huán)境。此時顯示出來的GOROOT就是你使用brew安裝go的安裝目錄,這個路徑要記下來。接下來要在bash_profile文件中進行配置。
使用vim ~/.bash_profile
然后在這個文件中進行編輯,下面以我的電腦為例,路徑這種要根據(jù)不同人的情況而定
GOROOT=/usr/local/Cellar/go/1.10.1/libexec (改成自己的go安裝目錄 go env命令可查看)
export GOROOT (不用動)
export GOPATH=/Users/jiangqiaowei/mygo (創(chuàng)建一個自己的文件夾 管理go相關(guān)內(nèi)容)
export GOBIN=$GOPATH/bin (不用改)
export PATH=$PATH:$GOBIN:$GOROOT/bin (不用改)
$ go get golang.org/x/mobile/cmd/gomobile (需要墻)
gomobile init
$ go get -d golang.org/x/mobile/example/bind/...
$ cd $GOPATH/src/golang.org/x/mobile/example/bind
$ gomobile bind -target=ios golang.org/x/mobile/example/bind/hello
此命令在ios/路徑下生成bind.xcodeprojxcode項目以及 在bind/目錄下生成一個 hello.framework
拖入項目即可使用
起碼得掌握go基礎(chǔ)語法和iris、gin還有beego這些常用的web框架,然后嘗試去寫一個web服務(wù)器或者一個后端api接口服務(wù)項目,就可以去找基礎(chǔ)的go開發(fā)崗位了。慕課網(wǎng)有一門go開發(fā)工程師的體系課,如果吃透了這門課,對轉(zhuǎn)型go開發(fā)非常有幫助。