Go 開發(fā)者 2021 調(diào)查報(bào)告
Go 官方博客公布了 2021 年面向 Go 開發(fā)者的調(diào)查報(bào)告。據(jù)稱此次調(diào)查收到了 11,840 份回復(fù),問卷回收數(shù)量是調(diào)查發(fā)起 6 年來最多的一次。

調(diào)查報(bào)告亮點(diǎn)
- 大多數(shù)回復(fù)與往年一致。例如,開發(fā)者對(duì) Go 的滿意度仍然很高,92% 受訪者表示滿意,75% 的受訪者在工作中使用 Go。
- 今年的部分受訪者來自于調(diào)查團(tuán)隊(duì)對(duì) Go VS Code 插件使用者的隨機(jī)抽樣,因此調(diào)查的回復(fù)跟以往相比也有所不一樣。
- 缺少關(guān)鍵庫、語言特性和基礎(chǔ)設(shè)施是使用 Go 最常見的障礙。(此調(diào)查是在 Go 1.18 發(fā)布之前進(jìn)行的,泛型是報(bào)告中最多人反饋的第一大缺失特性)。
- 受訪者希望優(yōu)先考慮對(duì)調(diào)試和依賴管理的改進(jìn)。
- 使用模塊時(shí)的最大挑戰(zhàn)涉及版本控制、使用私有倉庫和多模塊工作流。
- 81% 的受訪者對(duì) Go 項(xiàng)目的長期發(fā)展方向充滿信心。
Go 使用情況
和前幾年的調(diào)查結(jié)果一樣,Go 主要在科技行業(yè)被廣泛使用。70% 的受訪者是軟件開發(fā)者,少數(shù)從事 IT 或 DevOps 工作。76% 的受訪者表示他們?cè)诠ぷ髦惺褂?Go 進(jìn)行編程。72% 的受訪者表示他們使用 Go 開發(fā) API/RPC 服務(wù),其他的主要用途是 Web 服務(wù)、庫或框架、自動(dòng)化部署和數(shù)據(jù)分析等。少數(shù)開發(fā)者還使用 Go 開發(fā)桌面應(yīng)用、游戲、AI 和移動(dòng) APP。



一些新的統(tǒng)計(jì)結(jié)果:
- 大多數(shù)受訪者將他們的組織描述為企業(yè)或中小型企業(yè),大約四分之一的受訪者將他們的組織描述為初創(chuàng)公司。咨詢公司和公共機(jī)構(gòu)的占比更少。
- 絕大多數(shù)受訪者在少于 10 人的團(tuán)隊(duì)中工作。
- 超過一半 (55%) 的受訪者每天在工作中使用 Go,受訪者在工作之外使用 Go 的頻率較低。

開發(fā)者使用 Go 遇到的阻礙
受訪者被問及曾評(píng)估過 Go 但最終沒有選擇使用它,其中主要遇到的阻礙包括:缺少所需的語言特性、其他的編程語言對(duì)現(xiàn)有的工具和基礎(chǔ)設(shè)施提供了更好的支持、Go 生態(tài)缺少所需的庫、團(tuán)隊(duì)沒有使用 Go 的經(jīng)驗(yàn)、Go 工具不過豐富、Go 性能未能滿足需求、招聘 Go 開發(fā)者困難……等。

由此可見,語言特性的缺失和生態(tài)不夠豐富勸退了不少本想“入坑”的開發(fā)者。其中「泛型」是他們最希望添加的特性(調(diào)查進(jìn)行的時(shí)候尚未發(fā)布提供了泛型的 Go 1.18)。除了泛型,開發(fā)者對(duì)于類型系統(tǒng)相關(guān)的特性也具有十分強(qiáng)烈的需求你。Go 團(tuán)隊(duì)表示,他們將收集更多關(guān)于這些需求的背景信息,并可能在未來探索不同的方式來滿足這些需求,例如通過工具、庫或?qū)︻愋拖到y(tǒng)的修改。
那么這些相中了 Go,但最后又不采用它的受訪者選了什么語言?下面的圖表給出了答案:

Rust、Python 和 Java 是最常見的選擇。對(duì)此 Go 團(tuán)隊(duì)認(rèn)為,Rust 和 Go 有互補(bǔ)的特性,所以當(dāng) Go 不能滿足項(xiàng)目的需求時(shí),Rust 會(huì)是一個(gè)不錯(cuò)的選擇。使用 Python 的主要原因是 Go 缺少庫和現(xiàn)有的基礎(chǔ)設(shè)施支持,因此 Python 的大型包生態(tài)系統(tǒng)可能會(huì)導(dǎo)致他們難以切換到 Go。同樣,使用 Java 的常見原因是 Go 缺少一些功能,不過這應(yīng)該會(huì)通過在 1.18 版本中引入泛型而得到緩解。
開發(fā)者對(duì) Go 的滿意度
跟去年一樣,92% 的受訪者表示他們?cè)谶^去一年中對(duì)使用 Go 感到非常滿意或比較滿意。


此外,越來越多的開發(fā)者表示,Go 對(duì)于他們公司的成功提供了極大的幫助。

開發(fā)者對(duì) Go 的訴求
依賴管理和錯(cuò)誤處理是 Go 開發(fā)者需求最大的兩項(xiàng)功能。

開發(fā)者工具和實(shí)踐
與往年一樣,絕大多數(shù)受訪者表示在 Linux (63%) 和 macOS (55%) 系統(tǒng)上使用 Go。不過隨著時(shí)間的推移,主力使用 Linux 開發(fā)的 Go 受訪者比例似乎略有下降。

目標(biāo)平臺(tái)方面,超過 90% 的受訪者選擇了 Linux。盡管在 macOS 上開發(fā)的受訪者多于 Windows,但他們大多數(shù)選擇部署到 Windows 而不是 macOS。

最后
Go 開發(fā)者 2021 調(diào)查報(bào)告的部分關(guān)鍵要點(diǎn):
- 此次調(diào)查的樣本有所變化,但大部分同比指標(biāo)保持穩(wěn)定,大部分變化。
- 開發(fā)者對(duì) Go 的滿意度仍然很高
- 四分之三的受訪者在工作中使用 Go,許多人每天都在使用 Go
- Go 團(tuán)隊(duì)將優(yōu)先改進(jìn)調(diào)試和依賴管理的工作流程
完整報(bào)告查看:https://go.dev/blog/survey2021-results
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:Go 開發(fā)者 2021 調(diào)查報(bào)告
本文地址:https://www.oschina.net/news/192311/golang-survey2021-results






























