帶你完全自學!Go 語言(Golang) 實戰聖經 - 旗標

文章推薦指數: 80 %
投票人數:10人

更何況, 以Go 撰寫的程式效能向來非常優越, 正是這點令它聲名大噪。

Go 語言是由一個Google 團隊開發的, 該團隊在打造傑出程式語言和作業系統方面都已有悠久歷史 ... 旗標新書《完全自學!Go語言(Golang)實戰聖經》7/8重磅上市     Go語言( 有時也寫成Golang)是一種備受開發人員喜愛的程式語言,因為拿它來開發軟體充滿了好處。

已經有許多企業將Go 語言運用在他們的系統和服務中,因為不論開發團隊規模大小,用Go開發都一樣深具生產力。

更何況,以Go撰寫的程式效能向來非常優越, 正是這點令它聲名大噪。

    Go語言是由一個Google 團隊開發的,該團隊在打造傑出程式語言和作業系統方面都已有悠久歷史。

他們創造出一種能讓程式設計師喜愛的語言 ,讓人感覺神似JavaScript或PHP的動態特性,卻又具備C++和Java 這些強型別語言的性能和效率,為數幾百人的專案團隊裡也依然具備實用性。

  譯註:團隊成員之一不是別人,正是發展出B語言(C 語言的前身)及Unix作業系統的 KenThompson。

    Go語言充滿了有趣而獨特的特質, 比如在編譯時納入記憶體安全性考量,還有以通道(channel) 為基礎的並行性(concurrency)運算。

這本書會探討這些特色, 各位也將在學習過程中體會到Go語言何以有如此獨特的實作方式。

   Go的原始碼是以純文字撰寫, 再編譯成機器碼、並封裝成單一獨立的可執行檔。

這個執行檔完全自給自足,毋須預先安裝任何輔助工具就能執行;因此, 這種單一檔案形式能夠大幅簡化Go軟體的部署和發佈過程。

   編譯Go語言時, 有數種目標作業系統可供選擇,其中包括Windows、Linux、macOS、甚至Android等等。

也就是說 ,用Go語言撰寫的程式,真的是只寫一次就可以到處使用。

另一方面,編譯式程式語言之所以令人詬病, 就是因為程式設計師不喜歡在編譯原始碼時枯等;Go團隊對此了然於胸,因而特地打造出了神速的編譯器, 即使專案規模再大,編譯效率也絲毫不遜色。

    此外,Go語言屬於靜態型別 (staticallytyped)語言,採用了有型別安全防護的記憶體模型, 並有垃圾回收(garbagecollection) 機制。

這樣的組合可以避免開發人員製造出太多常見的程式錯誤跟安全漏洞, 卻仍能保有優越的性能跟效率。

      Ruby和Python 這類動態型別語言之所以受歡迎,部分原因就在於程式設計師認為,若不用去管資料型別和記憶體等問題, 開發時的生產力就會更好。

但這類語言的缺點是犧牲了性能和記憶體效率,且更容易發生型別不符的錯誤。

Go 語言不僅達到了動態型別語言的生產力,性能與效率方面也絲毫未打折扣。

      最後, 當今的電腦運算方式已有大幅的變化。

現在若想加快運算速度,就意味著你必須盡可能同時做更多的事, 也就是善用平行運算或並行性運算。

這種變化來自現代CPU的設計, 更注重於增加核心總數、而不是提升單一核心的時脈。

但現今檯面上的知名程式語言,在設計時都並未善用這點, 因此在撰寫並行性或多執行緒程式碼時很容易出錯。

    Go語言在設計之初便充分運用了CPU 的多重核心,且消除了所有可能的挫折跟程式碼錯誤。

這種設計讓開發人員可以容易且安全地撰寫並行性運算程式, 進而徹底發揮現代多核心CPU和雲端運算的優勢──輕輕鬆鬆釋放Go 語言在高性能處理和大規模專案擴展性方面的強項。

 Go 語言的模樣  範例:輸出隨機字串      首先,來瞧瞧Go 語言的程式碼長什麼樣子。

以下這段程式碼會從事先定義好的訊息陣列中隨機挑出一筆,然後在主控台顯示出來。

    小編註:本小節的內容在本書後面各章都會有更詳盡的討論。

這裡的目的還是讓各位對 Go程式有些初步認識。

  Chapter01\Example01.01      以下是Example01.01這隻程式執行的結果, 可以發現每次執行的結果都不同: 本文摘錄至《完全自學!Go語言(Golang)實戰聖經》 現正通路熱銷中 博客來 讀冊 天瓏 Copyright©  FlagTechnologyCO.,LTD.All rightsreserved. 取消訂閱 



請為這篇文章評分?