注:原文地址爲 Advise from Go developers to Go programming newbieshtml
以促進 India 的 go 編程做爲 GopherConIndia 承諾的一部分。咱們採訪了 40 位 Gophers(一個 Gopher 表明一個 GO 項目或是任何地方的 GO 程序員),獲得了他們關於 GO 的意見。從 2014 年的八月到十一月,咱們將每一個星期發表兩篇採訪稿。git
若是你正好剛剛開始 go 編程,他們對於咱們一些問題的答案可能會對你有很是有用。看看這些。程序員
應該作:github
- 通讀 the Go standard library 和 Effective Go,爲了學習 GO 的規範,Effective Go 是被高度推薦的,尤爲是若是你有其餘語言的背景。
- 在 Go tour 上作練習
- 看完語言參考
- 練習 Go by Example,而不單單是複製粘貼!
- 堅持編寫 GO 代碼,在幾周內你將會在這門語言上變得高效
- 理解接口的功能,他們是 GO 最大的禮物之一,可能比 channels 和 goroutines 還重要。這個關於接口的文章 article on interfaces 和 Andrew Gerrand 在 GopherCon 2014 上的 keynote 接口的描述 會對你很是有幫助。
- 拋棄你的 OO 的思想包袱,若是你來自於其餘語言,好比動態語言 Python 或是 Ruby,或者是一個編譯型語言如 Java 或 C#。GO 是一個面向對象的語言,可是它不是一個基於 class 的語言和不支持繼承。
- 瞭解繼承從 GO 語言中移除了。實踐組合的用法而不是繼承的機會顯現了,而且糾結於繼承只會致使你沮喪
- 不要以其餘語言的風格編寫 GO
- 尋找更加有經驗的 Gophers,他們能幫助你 review 代碼片斷和給你反饋。在 GO 社區能獲得真正的支持和幫助
- 用 GO 實現你想法中的一個項目或是找到一個項目來工做。而後隨着你學習的更多,不斷重構你的應用。利用郵件列表和參加 Gopher Academy Slack group 來見其餘的 Gophers 來獲得幫助。Dave Cheney 的博客和 GoingGo 的博客也是一個很是好的開始
- 不要等待泛型和函數式被添加進語言;屏住呼吸並學習愛上咱們在今天擁有的這門語言
注:私人添加,能夠訂閱 Newspaper.io 的 Golang Daily,以及 @ASTA謝 的 《Go Web 編程》 【做者也出了實體書,你們能夠購買】和 訂閱 Golang Ask News,社區 http://golanghome.com/,@無聞Unknown 的 《Go編程基礎》,《Go Web基礎》 和 《Go名庫講解》golang
給 go 初學者分享的一些問題web
- 對於任何人來講學習一門新語言可能都是使人挫折的。GO 社區是不可置信的活躍,你不是孤單的。利用全部的文檔,博客,本地的 Meetups 和用戶組,好比 Slack。不要懼怕問問題和參與
- 若是你對 GO 感興趣,使用它的一側涉足,或是專業的使用它,若是本地有 Go meetup,考慮參與。若是你有貨,考慮去分享它
- 若是你有計劃旅行,而且有能力,努力去訪問 GO 社區目的地
- 來訪的用戶羣體是個證實這個社區有衆多的用戶,支持者和僱員的途徑
- 不要浪費時間去和其餘語言比較,若是你喜歡 GO,就愛上他而且去使用它
- 接受 Go 的文化和 GO 作事情的方式。你的代碼會感謝你,若是你這樣作了,你會獲得不少
- 不要衝動的引入依賴
- 簡單是 GO 最重要的特徵。避免過度設計,使用簡單的代碼片斷而不是單一的龐大的代碼庫
- 從其餘語言移植庫到 GO 是一個很好的作法,它容許你剝離他人的代碼而且以符合 GO 語言的方式粘合起來。
注:How do you see the market for Go Programmers in the work place? What is the future for Go 這部分不翻譯,請讀者本身看編程