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%)。

从使用年限上来看,56% 的受访者使用 Go 语言进行开发的经验不足两年,相对来说算是新手。而有着较长时间 Go 开发经验的“老手”,多拥有 C/C++ 背景,对 JavaScript、TypeScript 和 PHP 则相对没有那么熟悉。另外,无论是 Go 的新手老手,大多数受访者最熟悉的语言还属 Python。

▲ 使用 Go 的时长

▲ 使用其他语言的经验

有意思的是,Go 是一个成功的开源项目,但大多数使用它的受访者却“很少”或“从不”为基于 Go 的开源项目做贡献。不过,随着 Go 社区的扩展,为它做贡献的受访者比例在缓慢上升中。

开发领域

在去年的调查中,多数受访者都集中在技术公司(包括软件、互联网等)。今年的受访者则来自更为广泛的开发领域。尤其是金融行业占比显著增加(8%→12%),来自技术行业的相对受访者比重从 52% 下降至 43%。

具体来讲,在 Go 的使用方面,最常见的领域是 Web 开发(66%)。在数据库相关领域使用 Go 的受访者数量显著增加,所占比例由去年的 29% 上升至 45%,排位也从第五跃升第二。其他常见领域还包括网络编程(42%)、系统编程(38%)和 DevOps(37%)。

Go 的主要用途依然是编写 API/RPC 服务和开发 CLI 应用程序,这两项分别占比 71% 和 62%。其次是库和框架方面,增长量巨大,所占比例从 30% 飙升至 48%。

开发环境

与往年一样,绝大多数被调查者表示在 Linux(66%)和 macOS(53%)系统上使用 Go。 这是本调查与 StackOverflow 调查存在很大差异的一个地方,后者有 45% 的受访者将 Windows 作为主要开发平台,而关于 Go 的调查中,这一数据只占 20%。

另外,受访者中有 38% 的人使用多操作系统应用这门跨平台语言,相较去年(41%)略有下降。

开发工具方面,VS Code、GoLand 和 Vim 仍占据编辑器排行榜前三位,并且这三位的使用份额占总数据的 3/4。其中 GoLand 的使用量在 2019 年增长最多(24%→34%),VS Code 的增长速度有所放缓。

今年的调查中新增了一个有关内部 Go 文档工具的问题。从总体数据来看,少数受访者(6%)表示所在的公司有运行自己的 Go 文档服务器。但如果仅查看大型组织(至少有 5,000 名员工)的数据,这一比例几乎翻了一番(11%)。

云开发

今年的问卷扩展了一些关于云开发的问题,可以看出,选择将 Go 应用部署到云上的开发者越来越多。其中,选择 AWS 的受访者数量(42%)几乎快要追上选择本地部署的受访者数量(44%)。

三大全球云提供商(Amazon Web Services、Google Cloud Platform 和 Microsoft Azure)的采用率均呈上升趋势,且牢牢占据绝大部分市场份额。

在满意度方面,受访者对在三大云提供商上使用 Go 感到总体满意。AWS 和 GCP 分别以 80% 和 78% 占有最高满意度,而 Azure 的满意度较低,为 57%。

对 Go 语言的态度

该问卷包含一个“你有多大可能将 Go 推荐给朋友或同事?”的问题,以此来计算净推荐值(Net Promoter Score, NPS)。最终 Go 在 2019 年调查中的净推荐值是 60 分(67% 的倡导者 - 7% 的贬低者),去年的调查中这一分数为 61 分。

长期被 Go 使用者诟病的包管理和缺少泛型这两个问题,依然是很多开发者使用 Go 时所面临的最大挑战。今年,提出工具存在问题的受访者比例也有所增加。Go 团队表示这些也是他们重点关注的领域,并表示希望在未来几个月中能够改善开发人员的体验,尤其是在模块、工具和入门经验方面。

Go 语言社区氛围

受访者对于 Go 社区的看法与往年相比有较大波动。认为自己在社区中有受到关注的人数比例从 82% 降至 75%。

另一方面,受访者对于这一问题的回应朝着两极分化的方向发展。选择“强烈同意”或“强烈反对”的比例都相对增加。Go 团队计划对此进行进一步研究。

Go 语言 2019 调查报告发布相关推荐

  1. Go 语言 2019 调查报告发布(内含 Go 语言图谱下载)

    <关注公众号,回复 Go 即可下载清晰知识图谱> 对 Go 语言感兴趣但又不知从何学起的同学,可以参考一下 Go 语言系列文章: 为什么你要选择 Go? Go 面向失败编程 带着服务器编程 ...

  2. Go 语言 2018 调查报告发布;阿里巴巴全资收购 Teambition

    (给技术最前线加星标,每天看技术热点) 转自:开源中国.solidot.cnBeta.腾讯科技.快科技等 [技术资讯] 0.Go 语言 2018 调查报告发布 Go 官方博客公布了 2018 年 Go ...

  3. rust木炭有用吗_【一点资讯】Rust语言2020调查报告发布:Rust 太难,生命周期更难...

    关注 "脚本之家 Rust 官方博客发布 了 2020 年度的 Rust 调查报告. 此次调查共收到以 14 种不同语言完成的 8323 份回复,使用英语的受访者人数占比最高,为 75%,其 ...

  4. Rust 2018 调查报告发布;微软超越苹果成为全球市值最大公司

    (给技术最前线加星标,每天看技术热点) 转自:开源中国.solidot.cnBeta.腾讯科技.快科技等 [技术资讯] 0.Rust 2018 年度调查报告发布 Rust 官方博客发布了 2018 年 ...

  5. 月薪集中在8k-17k、厌倦大小周、近三成的人没有跳槽过,2021-2022中国开发者调查报告发布

    月薪集中在8k-17k.厌倦大小周.近三成的人没有跳槽过,2021-2022中国开发者调查报告发布 「学不完的技术,跟不动的技术潮流」,过去一年,随着数字化.智能化趋势的来临,无论是传统的工具.开发者 ...

  6. 2019年开源安全现状调查报告发布

    Snyk 今天发布了2019年开源安全现状调查报告,这是一家针对开源项目提供安全服务的知名公司. 前言 为了更好地了解开源领域的安全现状,以及我们该如何让开源世界的安全性变得更好,Snyk 公司通过对 ...

  7. 月薪集中在8k-17k、厌倦大小周、近三成的人没有跳槽过,中国开发者调查报告发布

    作者 | 屠敏 出品 | CSDN(ID:CSDNnews) 「学不完的技术,跟不动的技术潮流」,过去一年,随着数字化.智能化趋势的来临,无论是传统的工具.开发者的习惯,还是进入"快速路&q ...

  8. Rust 生命周期太难学、最想实现与 C++ 互操作,Rust 2020 调查报告发布!

    编译 | 苏宓 头图 | CSDN 下载自东方 IC 出品 | CSDN(ID:CSDNnews) 众多语言中,Rust 作为一款小众的现代系统编程语言,近几年间,接连受到了各大企业的青睐. 正如不久 ...

  9. 2018 Python 开发者调查报告发布,数据出乎你意料吗?

    开发四年只会写业务代码,分布式高并发都不会还做程序员? >>>   JetBrains 发布了 2018 Python 开发者调查报告"Python Developers ...

最新文章

  1. Deep Learning for 3D Point Clouds: A Survey 论文阅读
  2. thinkbook14 2021款的一些坑
  3. 配置 docker0 网桥
  4. 序列化和反序列化的概述
  5. python 3解释器_Python3解释器
  6. 【渝粤题库】国家开放大学2021春2227物业设备设施管理题目
  7. x264_scan8分析
  8. mysql如何添加用户_如何创建新用户和授予MySQL中的权限
  9. Atitit uke人才分类 杰出人才 高级人才、专业技术人才、技能人才 杰出人才移民共包含科技丶艺术丶工商丶运动及教育五大领域 杰出人才定义 编辑 联邦移民法规定「杰出能力」是指在科学丶艺
  10. 图解深度学习的笔记:1.MP模型,感知器,BP下的多层感知器
  11. sap设置默认登录语言
  12. [2021时空AI白皮书]时空人工智能:关键技术
  13. autojs连连看脚本可视化
  14. 新装的服务器wincc上一些图形不显示,wincc画面无法全部显示
  15. Vue 截取视频第一帧作为封面图 然后转成base64,base64转成图片
  16. 最强大脑-星际迷航-JQuery 版本
  17. 微信小游戏 :未找到入口 app.json 文件,或者文件读取失败,请检查后重新编译
  18. js文本框设置必填项_Jquery文本框小例(必填框)
  19. 京东最爱考的前端面试题,html5移动web开发实战
  20. Ubuntu 18.04 其他镜像的刻录

热门文章

  1. 第十课.图片风格迁移和GAN
  2. 动手学深度学习: 图像分类案例2,GAN,DCGAN
  3. Android Fence timeout
  4. GitBook 从懵逼到入门
  5. 解决ubuntu的Firefox连接网络但是上不了网的问题
  6. P22 USM锐化(图像增强)
  7. 如何实现设为首页,加入收藏的功能
  8. SSH协议介绍及远程连接的使用
  9. CString 和 LPCTSTR等之间的转换
  10. c++多线程重点难点(六)CriticalSection