那么多編程語言鞍匾,為什么選擇Go

出身名門

在你閱讀以下內(nèi)容時交洗,我不得不告訴你一個事實,編程語言Go正在成為一顆冉冉升起的新星橡淑,為什么這樣說构拳,出身于Google,它是名門出身梁棠,它的作者可以說稱得上是神級一樣的人物≈蒙現(xiàn)在讓我們看看它的作者:

image
  • 肯·湯普遜:設(shè)計了B語言和C語言,創(chuàng)建了Unix和Plan 9操作系統(tǒng)符糊,1983年圖靈獎得主凫海,Go語言的共同作者。
  • 羅布·派克:Unix小組的成員男娄,參與Plan9和Inferno操作系統(tǒng)行贪,參與 Limbo和Go語言的研發(fā)漾稀,《Unix編程環(huán)境》作者之一。
  • 羅伯特·格里澤默:制作Java的HotSpot編譯器和Chrome瀏覽器的JavaScript引擎V8
  • 布拉德·菲茨帕特里克:LiveJournal的創(chuàng)始人建瘫,著名開源項目memcached的作者崭捍。

看到這是不是覺得這個十幾歲的Go少年背景如此之大,其實Go語言的前身僅僅是大佬們在實驗室中的一個實驗品暖混,后來在研究的過程中大佬們逐漸發(fā)現(xiàn)它的優(yōu)勢缕贡,最終Go正式版在2012年誕生,并迅速登上熱門語言的話題拣播。有調(diào)查顯示在2019年程序員最想要學(xué)習(xí)的編程語言Go榮登第一,其次是Kotlin和Python收擦。

image

哪些公司在用Go

Google

不得不說贮配,作為開發(fā)Go語言的公司,在實踐Go語言上做出了不少的努力塞赂。而且也開源了很多優(yōu)秀的項目泪勒,

image

七牛云

作為國內(nèi)領(lǐng)先的企業(yè)級云服務(wù)商,七牛云幾乎所有的項目都用Go語言編寫宴猾。

image

騰訊

騰訊可以說是國內(nèi)的大公司圆存,在Go語言的應(yīng)用方面主要是有關(guān)Docker容器方面。

image

今日頭條

如今大家都在用的今日頭條曾經(jīng)使用Go 語言構(gòu)建了大規(guī)模的微服務(wù)架構(gòu)

image

當(dāng)然還有很多仇哆,不僅僅是國內(nèi)的大公司還是國外的大公司沦辙,而且有很多小的公司正在實踐Go,也正是看中了Go的未來趨勢讹剔,所以才會廣泛的傳播和應(yīng)用油讯。

Go優(yōu)勢

快速上手

Go不是一種解釋型語言——它是編譯型的。這大大地(drastically)減少了在運行中突然出現(xiàn)的Bug延欠。這一點有點像C語言陌兑,代碼先被編譯,錯誤會在編譯時出現(xiàn)并得到處理由捎,然后才能運行;但是兔综,它比C更高級,比JavaScript和Python更具生產(chǎn)力狞玛。

性能

Go語言同C語言一樣可以直接將程序編譯成二進(jìn)制文件软驰,并且使用Go編譯的程序可以媲美C和C++的速度,眾所周知为居,Python由于簡單易用碌宴,在數(shù)據(jù)分析方面有著很好的優(yōu)勢,但唯一的缺點就是速度慢蒙畴,而Go語言早早的就站在了巨人的肩膀上贰镣,不僅速度快呜象,而且也具有簡單易用易學(xué)的特性,你或許聽說過學(xué)習(xí)Java至少要學(xué)習(xí)半年入門基礎(chǔ)碑隆,而Go僅僅需要一個星期左右恭陡,就可以編寫出一個很好的程序。

并發(fā)

Go 可以說最大的特點之一就是它是原生支持并發(fā)的上煤,在Go中休玩,用戶可以輕輕松松的運行幾千甚至上萬的并發(fā),Go的協(xié)程模型充分利用的CPU資源劫狠,因此Go廣泛應(yīng)用在服務(wù)端的應(yīng)用

網(wǎng)絡(luò)編程

在互聯(lián)網(wǎng)時代拴疤,網(wǎng)絡(luò)編程出現(xiàn)爆發(fā)式的增長,go語言具有天然的web優(yōu)勢独泞,提供了豐富的有關(guān)網(wǎng)絡(luò)編程的接口呐矾,而不再依靠第三方服務(wù),僅僅七八行就可以啟動一個Web程序懦砂。

除了以上這些Go還有很多優(yōu)勢蜒犯,比如延遲defer機(jī)制,交叉編譯使得它成為第一門完全支持 UTF-8 的編程語言荞膘》K妫可以說Go 語言做到了真正的國際化。

云計算時代

Go 語言被稱為云計算時代的 C 語言羽资,它在軟件開發(fā)效率和運行效率之間做出了絕佳的權(quán)衡淘菩。這使得它既適應(yīng)于互聯(lián)網(wǎng)應(yīng)用的極速開發(fā),又能在高并發(fā)削罩、高性能的開發(fā)場景中如魚得水瞄勾。

Go的使用場景

Go在Web 系統(tǒng)、API 應(yīng)用弥激、下載應(yīng)用进陡、游戲后端,以及各種服務(wù)器編程都有涉獵微服,Go 還適合分布式系統(tǒng)趾疚、網(wǎng)關(guān)類系統(tǒng)(微服務(wù)網(wǎng)關(guān))、數(shù)據(jù)庫代理器以蕴、基礎(chǔ)服務(wù)等的開發(fā)糙麦。

高并發(fā)領(lǐng)域

解決秒級高并發(fā),可以說丛肮,只要有高并發(fā)高可用需求的服務(wù)端程序都可以用 Go 開發(fā)赡磅。

大數(shù)據(jù)領(lǐng)域

數(shù)據(jù)挖掘(尤其是爬蟲)、數(shù)據(jù)分析宝与、數(shù)據(jù)存儲方面焚廊,Go 都非常適合冶匹。Go 和 Python 也是十分優(yōu)秀的組合。海量存儲有很多咆瘟,比如 InfuxDB嚼隘、CockroachDB、TiDB袒餐。

區(qū)塊鏈技術(shù)

因為區(qū)塊鏈系統(tǒng)開發(fā)涉及到算力及應(yīng)用飞蛹,雖然使用C++語言可以解決,但始終過于繁瑣灸眼,Java卧檐、Python等雖然能降低開發(fā)成本,但是性能及區(qū)塊鏈的算力又跟不上幢炸,所以很多企業(yè)在開發(fā)區(qū)塊鏈技術(shù)的時候泄隔,就會選擇開發(fā)成本低并且開發(fā)性能客觀的Go語言作為首選語言。

微服務(wù)領(lǐng)域

在構(gòu)建微服務(wù)方面宛徊,由于Go天然的網(wǎng)絡(luò)優(yōu)勢,使他可以快速部署逻澳,測試微服務(wù)闸天,對于微服務(wù)的開發(fā)似乎有著原生的支持。

最后

最后總結(jié)部分Go語言的開源優(yōu)秀項目斜做,可以說這些項目覆蓋了方方面面苞氮,包括了監(jiān)控系統(tǒng),容器技術(shù)瓤逼,大數(shù)據(jù)笼吟,微服務(wù),分布式霸旗,區(qū)塊鏈等等下面列舉部分

項目 簡介
Yoke Yoke 是 Postgres 的高可用集群贷帮,具有自動切換和自動集群恢復(fù)。Postgres冗余/自動故障轉(zhuǎn)移解決方案诱告,提供一個高可用PostgreSQL集群的簡單管理撵枢。
Docker Docker 是一個開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的容器中精居,然后發(fā)布到任何流行的 Linux 機(jī)器上锄禽,也可以實現(xiàn)虛擬化。容器是完全使用沙箱機(jī)制靴姿,相互之間不會有任何接口(類似 iPhone 的 app)沃但。幾乎沒有性能開銷,可以很容易地在機(jī)器和數(shù)據(jù)中心中運行。最重要的是,他們不依賴于任何語言佛吓、框架或包裝系統(tǒng)宵晚。
micro Micro是一個專注于簡化分布式系統(tǒng)開發(fā)的微服務(wù)生態(tài)系統(tǒng)垂攘。可插拔的插件化設(shè)計坝疼,提供強(qiáng)大的可插拔的架構(gòu)來保證基礎(chǔ)組件可以被靈活替換搜贤。
hugo Hugo是由Go語言實現(xiàn)的靜態(tài)網(wǎng)站生成器;簡單钝凶、易用仪芒、高效、易擴(kuò)展耕陷、快速部署掂名;相比于Hexo、Jekyll哟沫,hugo的優(yōu)勢是生成速度極快饺蔑。

更多內(nèi)容請參考go語言優(yōu)秀開源項目匯總

推薦閱讀


本文歡迎轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系作者嗜诀,謝謝猾警!


打開微信掃一掃,關(guān)注微信公眾號隆敢,和我一起成長
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末发皿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子拂蝎,更是在濱河造成了極大的恐慌穴墅,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,817評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件温自,死亡現(xiàn)場離奇詭異玄货,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)悼泌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評論 3 385
  • 文/潘曉璐 我一進(jìn)店門松捉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人券躁,你說我怎么就攤上這事惩坑。” “怎么了也拜?”我有些...
    開封第一講書人閱讀 157,354評論 0 348
  • 文/不壞的土叔 我叫張陵以舒,是天一觀的道長。 經(jīng)常有香客問我慢哈,道長蔓钟,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,498評論 1 284
  • 正文 為了忘掉前任卵贱,我火速辦了婚禮滥沫,結(jié)果婚禮上侣集,老公的妹妹穿的比我還像新娘。我一直安慰自己兰绣,他們只是感情好世分,可當(dāng)我...
    茶點故事閱讀 65,600評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著缀辩,像睡著了一般臭埋。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上臀玄,一...
    開封第一講書人閱讀 49,829評論 1 290
  • 那天瓢阴,我揣著相機(jī)與錄音,去河邊找鬼健无。 笑死荣恐,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的累贤。 我是一名探鬼主播叠穆,決...
    沈念sama閱讀 38,979評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼臼膏!你這毒婦竟也來了痹束?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,722評論 0 266
  • 序言:老撾萬榮一對情侶失蹤讶请,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后屎媳,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體夺溢,經(jīng)...
    沈念sama閱讀 44,189評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,519評論 2 327
  • 正文 我和宋清朗相戀三年烛谊,在試婚紗的時候發(fā)現(xiàn)自己被綠了风响。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,654評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡丹禀,死狀恐怖状勤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情双泪,我是刑警寧澤持搜,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站焙矛,受9級特大地震影響葫盼,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜村斟,卻給世界環(huán)境...
    茶點故事閱讀 39,940評論 3 313
  • 文/蒙蒙 一贫导、第九天 我趴在偏房一處隱蔽的房頂上張望抛猫。 院中可真熱鬧,春花似錦孩灯、人聲如沸闺金。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽败匹。三九已至,卻和暖如春面哥,著一層夾襖步出監(jiān)牢的瞬間哎壳,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評論 1 266
  • 我被黑心中介騙來泰國打工尚卫, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留归榕,地道東北人。 一個月前我還...
    沈念sama閱讀 46,382評論 2 360
  • 正文 我出身青樓吱涉,卻偏偏與公主長得像刹泄,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子怎爵,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,543評論 2 349

推薦閱讀更多精彩內(nèi)容