专访William Kennedy:如何学习Go语言
第四屆GopherChina大會將在4月14日于上海舉辦,這次大會邀請了William(Bill) Kennedy前來舉辦Go語言培訓。我們借此機會對他進行了采訪,了解他對Go語言的開發以及對新人學習的一些建議。
\\受訪嘉賓介紹:
\\Bill 是 Gopher US 大會的組織者之一,《Go in Action》作者,Bill 有著25年的開發軟件和應用的經驗。 2013年開始接觸 Go 并成為了 Go 的布道者,至今已經培訓過來自100多家公司的超過2000多的工程師。Bill 是博客 GoingGo.net 的作者。
\\InfoQ:大多數中國Go開發者都是從你的博客認識你,能簡單的介紹一下你自己嗎?
\\\William:我叫William Kennedy。我的朋友叫我Bill。自1991年以來,我一直從事軟件開發工作。職業生涯的大部分時間是在微軟平臺上編寫基于多線程的軟件。2013年,Ardan Labs 面臨一次困境,就是我們需要從 Windows 中獲得所提供的開發服務。然而使用微軟的許可成本很高,使得Ardan Labs比其他公司更貴。直到我發現了 Go。我需要一種編程語言,可以讓我在 Linux 編寫軟件。
\\\InfoQ:你為什么如此喜歡Golang,最喜歡它的哪些特性?
\\\William:Go 語言是一個從頭到尾都非常神奇的工程設計。我最喜歡的是語言之間的平衡,把機器抽象出來,卻讓你有能力理解代碼對機器的影響。這是我所見過的一個工程項目簡單性和可讀性的終極指南。
\\\InfoQ:您接觸過Golang官方團隊嗎,能否描述一下他們?
\\\William:很幸運,我遇到了很多Go語言團隊的成員。他們是一群了不起的工程師和人。他們非常關心社區和 Go 。他們是非常務實的人,不會匆忙做出決定。我認為這對每個人都有很大的好處。你能感受到他們很容易接近。如果你在使用Go上遇到問題,不要猶豫,給他們發一封電子郵件,或者在Go-Nuts郵件列表上聯系他們。他們會回應。
\\\InfoQ:我們知道Golang有Docker、Kubernetes等非常成功的項目,您知道它們為什么會選擇Golang嗎?
\\\William:這是個有趣的問題。我不是這些項目的開發者,所以我不能直接回答你為什么,只能猜測。我認為 Go 的最大優勢之一是降低/消除了開發人員需要關注的低級技術工程問題。內存管理和調度并行工作負載可能是最大的兩個。這允許開發人員在不損失軟件性能的情況下更高效。這是關鍵。作為一個行業,我們把生產力作為我們應該優先考慮的事情。但成本一直都是直觀的表現。我認為 Go 已經改變了這一點。
\\\InfoQ:您所了解的硅谷創業公司使用Golang的多嗎?
\\\William:這是另一個棘手的問題。在舊金山有很多創業公司,我相信他們都在為他們的產品和服務選擇正確的工具。我們必須記住,Go 只是一個工具,只是一個工具而已。Go 是解決相同于谷歌的問題一個很好的工具。網絡、分布式計算、高容量的事務處理軟件、cli工具等等,但是當我和全世界的人交談時,似乎至少是我遇到的每個項目的一小部分。
\\\InfoQ:如何快速掌握一門編程語言?
\\\William:這對不同的人來說是不同的。有些人喜歡閱讀,有些人喜歡看視頻。對我來說,我覺得應該先學會讀懂代碼,甚至比你先開始學習寫代碼重要,我們是少數幾個先教人寫然后再教人讀的行業。我們所說的編寫更好的軟件、代碼審查、測試和理解成本的一切都圍繞著我們閱讀代碼的能力。
\\我想說,快速掌握一門語言并不重要,但要快速、高效地完成任務??焖俚木帉懘a以確保正確性(完整性、可讀性和簡單性)。同樣,這需要學習如何閱讀代碼,如何與人合作。
\\\InfoQ:對于Go語言新人你有什么學習建議嗎?學習Go語言的最佳實踐是什么,能否推薦一些書籍?
\\\William:帶有私心的說,我認為我寫的行動手冊是一個不錯的選擇。這本書比較健談,所以如果你想要一本更學術性的書,這本書就更好了。閱讀兩本書都能提供很大的平衡。
\\另外也推薦我的博客 GoingGo.net,它是我在這本書之后花費時間很多的地方。我還有一個視頻,我的訓練課程資料 Ultimate Go 在 Safari 網上,我認為這也是一個很好的選擇。大部分視頻培訓網站都有很好的素材。托德·麥克勞德非常棒,還有其他人。
\\\InfoQ:對于Golang培訓課程的參與者,他們需要準備些什么嗎?你想對他們說些什么?
\\\William:以開放的心態面對自己。要想成為一個高效的開發人員,我相信您需要離開面向對象的設計,轉向面向數據的設計。這需要你以不同的方式思考工程。采用新技術很容易,但是要采用新的思維方式是很困難的。我認為這對 Go 很重要。
\\\InfoQ:您怎么看待Gopher China社區?
\\\William:很高興能見到來自世界上最大的社區的 gopher。我得到了環游世界的祝福,并遇見了許多在美國以外的人,他們都像我一樣充滿激情。我遇到的每個人都很了不起,都在從事令人興奮的項目。在中國和這個社區見面是很特別的。這是罕見的,我感到謙卑和榮幸有這樣的機會。我很高興能和人們交談,了解他們的項目,他們的成功和關注。我希望有一天,在中國能有更多的機會成為全球大家庭的一員。我們相互學習,在中國的經驗水平對每個人都是有益的。
\\我知道我將會遇到令人驚嘆的工程師和擁有豐富經驗和知識的人。我想我會離開中國,學到比我在那里學到的更多的東西。這讓我很興奮。
\\\InfoQ:您認為Go語言的未來會怎樣?
\\\William:我看到全世界對Go語言的培訓的需求越來越大。我看不出這種趨勢有減速的跡象。我的公司 Ardan Labs 正在尋找機會從事真正令人興奮的項目。Go語言的未來無疑是充滿前景的。
\\\第四屆 Gopher China 大會4月將在上海舉辦,今年第一次增加了會前的Workshop 。本屆大會從規模到內容將創歷史新高,并繼續贈送GoPher限量T恤。點此報名大會,輸入優惠碼【Geekbang】,八五折優惠!
總結
以上是生活随笔為你收集整理的专访William Kennedy:如何学习Go语言的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sharding-jdbc源码解析之sq
- 下一篇: 树莓派apt-get下载网速太慢