Beego 負責人是如何解決學習 Go 困境的?
昨天我交流群里的一條發(fā)言,激起了不小的水花,一位群友最近面試 Java 方向的工作都不是很順利,于是抱著試一試的態(tài)度把 Java 方向的簡歷改成了 Go 方向的,結(jié)果還挺令人吃驚的。

很多人私聊問我,到底該不該學習 Go 語言。直接給你答案吧,你也不信。所以,在正式回答之前,我們還是先說說,到底怎么判斷一門語言是不是有前景?
左耳朵耗子之前曾經(jīng)分享過他的經(jīng)驗,看一個技術(shù)能不能火起來,主要從三個角度:
有沒有雄厚的資金支持
有沒有一個活躍的社區(qū)
有沒有殺手級的應用
這個邏輯對不對,你可以用Java以及另外一門沒有火的技術(shù)來印證下。
Go 背靠 Google 公司,社區(qū)非?;钴S,并且有 Docker、Kubernetes 哦這樣的殺手級應用?,F(xiàn)在,我們已經(jīng)看到,Go 是云計算時代的首選編程語言,并且,我還可以很確定的說:它正在成為下一個企業(yè)級編程語言。
值得一提的是,Go 語言是字節(jié)跳動內(nèi)部使用最多的編程語言。為啥?因為字節(jié)跳動更看重效率。Go 語言上手簡單,學習難度低。另外, Goroutine 和 Channel 這兩個神器可以很好解決并發(fā)和異步編程的問題。它是新一代的編程語言。

所以,如果你的第一語言是 PHP 或者 Python 或者 C#,并且職位是后端工程師,那我還是建議你學學 Go。不是鼓吹 Go,是我覺得這是趨勢,我們不管是寫程序,還是做其他事情,都應該順應時代。
雖然都說 Go 上手容易,但是想要真正的會使用 Go 語言進行項目的編寫,就沒有那么容易了。因為大部分人在學習和使用 Go 語言過程中,都遇到過這么幾個的困境:
一看就會,一寫就懵;書籍或別人的代碼基本能看懂,但自己寫項目時卻不知道如何下手;
寫出來的代碼有濃重的其他語言味道;
工程化實踐經(jīng)驗為 0 ;只會基于別人的框架填代碼,不會自己進行工程化;搬磚似乎永遠沒有競爭力;
說實話,這些問題我自己也遇到過。因為我們大多數(shù)人對于 Go 的學習可能僅限于語法,卻不清楚它背后的設(shè)計原理,沒有親手做過項目。
現(xiàn)在機會來了!極客時間重磅出品的 Go 語言基礎(chǔ)課,3 天帶你掌握 Go 語言背后的設(shè)計原理及實現(xiàn)方式。
挑戰(zhàn) 3 天成為 Go 初級工程師!
如何 0 元學?
