講真,Go 語言作為新秀,發(fā)展這么快,也是原因的。
雖然國內(nèi)的大公司之前的很多老項(xiàng)目語言和架構(gòu)都基本固定了,但是仍然會(huì)在一些新項(xiàng)目上使用 Go 語言。也確實(shí)因?yàn)?Go 的優(yōu)勢(shì),比如:
相比于 C 系語言來說,開發(fā)效率極高。
性能好,部署方便,極方便的高并發(fā)特性,語言層面支持。包括 docker 和 k8s 等都是 go 寫的,web方面也有 beego 、gin 這樣的框架。
所以近年來,招聘市場(chǎng)對(duì) Go 語言工程師的需求,不論是數(shù)量還是薪資,都在與日俱增。
按照目前的求職激烈程度來看,多掌握一門語言的開發(fā)者也是獨(dú)具競(jìng)爭力的。在眾多語言里,掌握 Go 語言是一個(gè)最理想的選擇,它同時(shí)具備了 Python 的簡易性,以及傳統(tǒng) C++ 和 Java 的性能,可用于所有對(duì)性能有較高要求的系統(tǒng)中,比如分布式系統(tǒng)、網(wǎng)絡(luò)編程、高并發(fā)系統(tǒng)、服務(wù)端編程等,而且Go語言的語法也相對(duì)簡單且實(shí)用。
最近,我在搜集 Go 語言學(xué)習(xí)資料時(shí),發(fā)現(xiàn)了 QCon 大會(huì)上,當(dāng)時(shí)是亞馬遜(中國)首席架構(gòu)師蔡超的演講《講給 Java / C++開發(fā)者的 Go 高效編程》,很有收獲。視頻里講出了一個(gè)普遍問題:有編程基礎(chǔ)的開發(fā)者,在學(xué)一門新語言時(shí)(比如 Go),往往會(huì)受原有語言模型影響,表面上是使用新語言開發(fā),實(shí)則是把一種語言翻譯成另一種語言來表示。因此,學(xué)習(xí)時(shí)不得要點(diǎn)且低效。
那么該如何從0開始學(xué)習(xí)Go語言呢?
- 找個(gè)高手,給你傳道授業(yè)解惑
- 找出現(xiàn)有語言和 Go 語言容易混淆的不同點(diǎn),強(qiáng)化練習(xí)
- 學(xué)以致用,嘗試用 Go 語言開發(fā)一個(gè)小項(xiàng)目