- Go語言高效編程:原理、可觀測性與優化
- (波蘭)巴特洛米·普洛特卡
- 897字
- 2025-05-07 12:18:23
第2章
初識Go語言
Go是一種運行高效、可擴展且富有成效的語言。有些程序員覺得使用Go工作很有趣,而另一些程序員則覺得它缺乏創造力,甚至無趣。其實這些立場并不矛盾。Go旨在解決谷歌軟件開發中面臨的問題,它雖然不是一種突破性的研究語言,但在大型軟件工程項目中仍然是優秀的工具。
——Rob Pike,“Go at Google:Language Design in the Service of Software Engineering”(https://oreil.ly/3EItq)
筆者是Go語言的超級粉絲。世界各地的開發人員使用Go實現項目的數量令人贊嘆。多年來,Go一直位居工程師們喜歡或想學習的名單前5位(https://oreil.ly/la9bx)。它被眾多企業使用,包括蘋果、美國運通、Cloudflare、戴爾、谷歌、Netflix、紅帽、Twitch等科技巨頭(https://oreil.ly/DSM73)。當然,金無足赤,人無完人,Go也并非完美。筆者可能會更改、刪除或添加一些東西到Go中。但如果你半夜叫醒筆者并讓筆者快速編寫可靠的后端代碼,筆者會用Go去寫。Go中有命令行接口,也有快速、可靠的腳本。初級程序員應該學習的第一門語言是什么?筆者的回答是:Go。物聯網、機器人和微處理器的代碼開發呢?答案也是Go[1]。基礎設施配置呢?截至2022年,筆者認為在模板健壯性方面沒有比Go[2]更好的工具。
別誤會筆者的意思,有些語言具有優于Go的特性或生態。例如,圖形用戶界面(G U I)、游戲行業的高級渲染部分或在瀏覽器中運行的代碼[3]。然而,一旦你意識到Go語言的諸多優勢,就很難再回到其他語言了。
在第1章中,我們花了一些篇幅建立軟件開發的效率意識。我們了解到我們的目標是以最少的開發量和成本編寫高效的代碼。本章將說明為什么Go語言能成為實現性能與質量平衡的可靠選擇。
2.1節和2.2節將簡明扼要地列出一些每個人都應該知道的Go事實,其中一些事實是筆者希望在2014年開始使用Go時就已知曉的。這兩節涵蓋的不僅僅是效率方面的基本知識,還將介紹Go語言相關知識。然而,如果你是這門語言的初學者,筆者建議你閱讀這些內容,然后查看摘要中提到的其他資源。不妨試著用Go編寫你的第一個程序,然后再回顧本書。另外,如果你認為自己是高級用戶或專家,筆者建議你也不要跳過本章。筆者將解釋一些關于Go鮮為人知的事實,你可能會覺得有趣或有爭議(沒關系,每個人都可以有自己的意見!)。
最后,我們將在2.3節中回答有關Go整體效能的問題,也就是將在2.3節對Go和其他語言進行對比。
- PyTorch自動駕駛視覺感知算法實戰
- C語言程序設計教程(第2版)
- 數據結構簡明教程(第2版)微課版
- Mastering AndEngine Game Development
- 數據結構(C語言)
- Apex Design Patterns
- Hands-On Natural Language Processing with Python
- C語言課程設計
- ServiceNow:Building Powerful Workflows
- Unity Character Animation with Mecanim
- Kotlin Programming By Example
- Java EE Web應用開發基礎
- Microsoft Exchange Server 2016 PowerShell Cookbook(Fourth Edition)
- Deep Learning for Natural Language Processing
- Python面試通關寶典