2007年誕生的Go語言,憑藉其近C的執行性能和近解析型語言的開發效率,以及近乎完美的編譯速度,席捲全球。Go語言相關書籍也如雨後春筍般涌現,前不久,一本名爲《Go語言併發之道》的書籍被翻譯引進國內,並迅速引發普遍關注,本書由融雲的一位研發工程師趙晨光聯合翻譯,旨在幫助Go語言學習者瞭解併發設計的模式和應用場景,更加深刻理解Go語言特性,從而提高自身技術研發水平。
「Go語言併發編程快速入門的第一要義」
《Go語言併發之道》主要講解了Golang語言的最佳實踐和模式,引導讀者如何選擇併發模型以及如何組合利用。全書詳細剖析了併發與並行的關鍵性區別、Go語言的內存同步原語,並列舉了幫助學習者編寫大規模分佈式系統的技巧和工具。
關於Go語言學習的思考,趙晨光認爲,「Go語言併發編程快速入門的第一要義是理解Go語言併發的範式所內涵的思想」,初學者只有打好原理基礎,纔可發揮出Golang語言特性帶來的各類便利。此外,Go語言在應用上具備不少優點,很是適合編寫處理高併發量的服務端程序,Go語言的併發之道和融雲現有IM的技術架構很類似,正如《Effective Go》中對共享內存與消息通信方式的描述:「Do not communicate by sharing memory; instead, share memory by communicating.」(不要經過內存共享進行通信;應當經過通信來共享內存)。
更重要的是,比起熱門的Java、C++等語言來講,Golang推崇的是大簡之道,更有助於提高業務效率。「固然,Golang也有一些缺點,例如對於企業來講,將項目中的現有語言換成Go語言編寫,有必定的替換成本,但這仍然不影響它成爲年度十大受歡迎的語言之一。」
融雲「極客」氛圍助推學習實踐
在聯合翻譯的過程當中,趙晨光也遇到不少阻礙,例如他自謙的提到,因爲受自身語言水平的限制,始終難以達到其心目中「信達雅」的翻譯標準;每次遇到瓶頸或研究困難時,他都會向工做中的技術大拿們尋求幫助,以便更好的理順思路及理解Golang在實踐中的應用問題。
「融雲良好的技術氛圍和開放共享的環境,對我在工做和學習中有很大的幫助,必定程度上也促進了《Go語言併發之道》的翻譯。平時部門內部有同事遇到技術問題時,你們會隨時交流;研發部也常常會買一些前沿的技術書籍供你們學習,同事們的幫助和好的溝通氛圍讓我能夠更加專一於技術自己的學習研究。」
此外,趙晨光還將本身對Go語言的研究應用到平常工做中,運用Go語言開發了不少小工具,將技術原理應用到實踐,有效提高了本身和團隊的工做效率。值得一提的是,理論的研究和具體工做的結合讓他對IM架構加深了理解,他將本身的總結在團隊內進行分享,爲同事們的研發工做提供新的思路,更進一步專一於IM和實時音視頻的技術深耕,完成從學習沉澱到實踐運用的循環過程,從而爲客戶提供更安全、可靠、穩定的產品技術支持,以及更高效的服務。
據瞭解,融雲80%的員工都是技術人員,在 「極客」的氛圍下,衆多研發工程師都在工做中取得了長足的進步。正如融雲CTO楊攀屢次在採訪中表示,融雲之因此勇於公開承諾消息「不丟、不重、不亂」,源於「對技術心存敬畏之心」,這不只是融雲的企業理念,也是每一位技術人員在工做中踐行的信條。
https://developer.rongcloud.c...編程