Go語言 2019 調查報告發布

developAJ發表於2020-04-26

file
Go 官方部落格昨日公佈了[ 2019 年 Go 語言調查報告]。本次調查收到的回覆達到 10,975 份,約為去年的兩倍。 這些受訪者的反饋意見將被選取用於改進 Go 語言的發展。

以下是 2019 年度的調查報告摘要:

  • 此調查中,受訪者的受眾特徵與 Stack Overflow 的受訪者相似,因此這些結果在某種程度上可以代表更廣泛的 Go 開發人員。
  • 大多數受訪者每天都要用到 Go 語言,並且該數字在逐年上升。
  • Go 的使用仍集中在技術公司,但它同時也被用於越來越多的行業,例如金融和媒體。
  • Go 最常見的用途仍然是編寫 API/RPC 服務和 CLI 工具。
  • 模組在 Go 生態系統中的使用率很高,與此同時,圍繞軟體包管理的一些問題仍然存在。
  • 有待改進的重點領域包括 debug、模組和雲服務的體驗。
  • VS Code 和 GoLand  依然最受開發者歡迎,有 3/4 的受訪者都喜歡它們。

有關調查報告的詳細內容請繼續往下閱讀。

開發者背景

調查結果顯示,在工作中使用 Go 語言的受訪者比例與去年相當,均為 72%,這一數值幾乎每年都在增長。在工作之餘使用 Go 語言的人數比例則有所下降(70%→62%)。

image

從使用年限上來看,56% 的受訪者使用 Go 語言進行開發的經驗不足兩年,相對來說算是新手。而有著較長時間 Go 開發經驗的“老手”,多擁有 C/C++ 背景,對 JavaScript、TypeScript 和 PHP 則相對沒有那麼熟悉。另外,無論是 Go 的新手老手,大多數受訪者最熟悉的語言還屬 Python。

image

▲ 使用 Go 的時長

image

▲ 使用其他語言的經驗

有意思的是,Go 是一個成功的開源專案,但大多數使用它的受訪者卻“很少”或“從不”為基於 Go 的開源專案做貢獻。不過,隨著 Go 社群的擴充套件,為它做貢獻的受訪者比例在緩慢上升中。

image

開發領域

在去年的調查中,多數受訪者都集中在技術公司(包括軟體、網際網路等)。今年的受訪者則來自更為廣泛的開發領域。尤其是金融行業佔比顯著增加(8%→12%),來自技術行業的相對受訪者比重從 52% 下降至 43%。

image

具體來講,在 Go 的使用方面,最常見的領域是 Web 開發(66%)。在資料庫相關領域使用 Go 的受訪者數量顯著增加,所佔比例由去年的 29% 上升至 45%,排位也從第五躍升第二。其他常見領域還包括網路程式設計(42%)、系統程式設計(38%)和 DevOps(37%)。

image

Go 的主要用途依然是編寫 API/RPC 服務和開發 CLI 應用程式,這兩項分別佔比 71% 和 62%。其次是庫和框架方面,增長量巨大,所佔比例從 30% 飆升至 48%。

image

開發環境

與往年一樣,絕大多數被調查者表示在 Linux(66%)和 macOS(53%)系統上使用 Go。 這是本調查與 StackOverflow 調查存在很大差異的一個地方,後者有 45% 的受訪者將 Windows 作為主要開發平臺,而關於 Go 的調查中,這一資料只佔 20%。

另外,受訪者中有 38% 的人使用多作業系統應用這門跨平臺語言,相較去年(41%)略有下降。

image

開發工具方面,VS Code、GoLand 和 Vim 仍佔據編輯器排行榜前三位,並且這三位的使用份額佔總資料的 3/4。其中 GoLand 的使用量在 2019 年增長最多(24%→34%),VS Code 的增長速度有所放緩。

image

今年的調查中新增了一個有關內部 Go 文件工具的問題。從總體資料來看,少數受訪者(6%)表示所在的公司有執行自己的 Go 文件伺服器。但如果僅檢視大型組織(至少有 5,000 名員工)的資料,這一比例幾乎翻了一番(11%)。

image

雲開發

今年的問卷擴充套件了一些關於雲開發的問題,可以看出,選擇將 Go 應用部署到雲上的開發者越來越多。其中,選擇 AWS 的受訪者數量(42%)幾乎快要追上選擇本地部署的受訪者數量(44%)。

三大全球雲提供商(Amazon Web Services、Google Cloud Platform 和 Microsoft Azure)的採用率均呈上升趨勢,且牢牢佔據絕大部分市場份額。

在滿意度方面,受訪者對在三大雲提供商上使用 Go 感到總體滿意。AWS 和 GCP 分別以 80% 和 78% 佔有最高滿意度,而 Azure 的滿意度較低,為 57%。

image

對 Go 語言的態度

該問卷包含一個“你有多大可能將 Go 推薦給朋友或同事?”的問題,以此來計算淨推薦值(Net Promoter Score, NPS)。最終 Go 在 2019 年調查中的淨推薦值是 60 分(67% 的倡導者 - 7% 的貶低者),去年的調查中這一分數為 61 分。

image

長期被 Go 使用者詬病的包管理和缺少泛型這兩個問題,依然是很多開發者使用 Go 時所面臨的最大挑戰。今年,提出工具存在問題的受訪者比例也有所增加。Go 團隊表示這些也是他們重點關注的領域,並表示希望在未來幾個月中能夠改善開發人員的體驗,尤其是在模組、工具和入門經驗方面。

image

Go 語言社群氛圍

受訪者對於 Go 社群的看法與往年相比有較大波動。認為自己在社群中有受到關注的人數比例從 82% 降至 75%。

另一方面,受訪者對於這一問題的回應朝著兩極分化的方向發展。選擇“強烈同意”或“強烈反對”的比例都相對增加。Go 團隊計劃對此進行進一步研究。

image

相關文章