天天看點

跟着老貓來搞GO,系好安全帶,準備發車!

XXX大廠内部已全部轉型成go開發,你還不心動麼

為什麼想要開篇這麼一個系列部落客題?

我想有很多小夥伴想要問我這個,其實主要有以下幾個原因。

之前寫過幾篇關于java分布式系統的一些坑,然後就有小夥伴挺崇拜的,認為老貓啥都會,甚至想找我做老師,比如:

上面這個回答,事後老貓想想回答的真是不謙虛,還真的是把自己當成哪門子大牛了,還回答有問題就來問,其實頂多也就是一起讨論一下。剛回答完,後面就被打臉了。

老貓真的不曉得什麼是ceph,而且還是頭一次聽說,寫到這裡,可能很多小夥伴要噴我了,“lowB 這個都不曉得”。後來老貓去網上搜了一下,原來這是個分布式檔案系統,底層是C++ /c開發的。這哥們是個C++程式員。還好哥們也沒有嘲諷我,而是表明了他近期的意向。

原來哥們其實是想轉型學習go,并且希望參與一個項目,其實說實在的,老貓也沒怎麼接觸go,老貓的主要後端語言是java,關于go之前也就了解了一些皮毛。也不曉得當時怎麼了,腦子一熱,就說要搞個“go爬蟲系統”和這個哥們分享。

這牛逼也算是吹出去了,接下來也得自己扛了,是以,這也是老貓想寫這個系列部落格的其中一個原因。

另外的,其實go現在是真的很火,咱姑且先不去談論現在學習go語言的人數趨勢是什麼,作為程式員,我相信很多小夥伴都關注了多多少少的一些公衆号,這些公衆号,動不動就是給你來個“XXX大廠全面轉型GO”。然後就是關于GO的鋪天蓋地的廣告教育訓練。我想很多朋友都會看到這些,你說作為java後端或者其他後端開發人員,看到這種廣告心裡肯定多多少少會掀起波瀾。

現在我們再來回過頭來看看現有的go語言的趨勢是不是真的如此。我們一起來看一下兩個圖

從以上圖中,我們可以很明顯地看到go語言的發展趨勢這幾年是真的很快,這是統計到19年的一個趨勢,我們可以很明顯地看到go從一門非主流語言已經發展成為了主流語言。

另外的,其實目前很多比較前沿的技術,也都在使用go語言,比如區塊鍊技術,雲計算等,大家比較熟悉的docker以及k8s其實就是用的go語言開發出來的。

那麼為什麼會選擇用go語言來開發呢,老貓也去度娘了一下,簡單地概括,主要是因為它開發快并且運作也快,并且能夠相當容易地就支援多線程,它是一門真多其他語言的痛點進行設計出來的語言。它非常特别,沒有“對象”,沒有繼承多态,沒有泛型,沒有try/catch。有接口,函數式程式設計,CSP并發模型(goroutine+channel)。(具體老貓也暫時還沒體會,這是聽說有這麼牛逼,接下來的日子,老貓會慢慢和大家分享并體會)

既然咱們要幹,那麼咱就好好和大家同步一下接下來的計劃。距離2022年還有兩個月左右的時間,咱們給自己定一個小目标,在2022年的元旦,咱們完成go語言的學習,并且完成一個真實的開源小項目。接下來,老貓會以一周一更到兩更的形式,釋出到公衆号“程式員老貓”上,大家可以關注“程式員老貓”,來一起學習一起進步,并且更多地是過來督促一下老貓,如果你也在猶豫要不要學習go,你也堅持不下去,那麼何不和老貓一起來打卡呢?一起進步的路上怎麼能少掉螢幕前的你呢?“滴滴叭叭”,老貓号go快車快要發車了,還沒有上車的小夥伴可以趕緊上車了。

熱愛技術,熱愛産品,熱愛生活,一個懂技術,懂産品,懂生活的程式員~

更多精彩内容,可以關注公衆号“程式員老貓”。

一起讨論技術,探讨一下點子,研究研究賺錢!