2020年Q3开发者数据报告:JavaScript 最受欢迎开发者

 JavaScript     |      2020-11-22 02:28

  原标题:2020年Q3开发者数据报告:JavaScript 最受欢迎,开发者最关注支持/文档

  近日, SlashData 公司公布了 2020 年第 3 季度的《开发者报告》,对全球 159 个国家或地区的 17000 多名开发者展开调查,从编程语言用户的绝对数量方面出发进行了分析。

  报告指出,Java 仍稳居最受欢迎榜单首位,全球有 1240 万的开发人员正在使用该语言。

  Java 是最受欢迎的编程语言,全球有 1240 万开发者在使用它。值得注意的是,在过去的三年里,Java 社区的规模一直在持续增长。在 2017 年第二季度至 2020 年第三季度期间,有近 5M 名开发者加入了该社区 —— 这是迄今为止所有语言中绝对增长最高的。即使在数据科学或 AR/VR 等 Java 最不受欢迎的软件领域,也有超过五分之一的开发者在项目中使用 Java。

  连续两个半年,Python 是仅次于 Java 的最广泛采用的语言。仅在过去一年中,Python 就净增了 220 万名新开发者,现在已经统计了 9M 用户,在 2020 年初超过了 Java。数据科学和机器学习(ML)的兴起是其流行的一个明显因素。目前,77% 的 ML 开发人员和数据科学家使用 Python。只有 22% 的人使用 R,这是另一种经常与数据科学相关的语言。

  Java 在全球拥有超过 8M 的活跃用户,是移动应用生态系统 —— Android 的基石,也是最重要的通用语言之一。在过去的半年里,它的采用率可能保持稳定,但从整体来看,自 2017 年年中以来,Java 社区已经获得了 160M 的开发者,相当于增长了 24%。

  Kotlin 是增长最快的语言社区之一,自 2017 年底以来,Kotlin 的规模增长了 2 倍多,从 2017 年第四季度的 110 万增长到 2020 年第三季度的 230 万。这一点从 Kotlin 的排名也非常明显,在此期间,Kotlin 的排名从第 11 位上升到第 9 位 —— 这一趋势主要归功于谷歌决定将 Kotlin 作为 Android 开发的首选语言。

  Swift 在 2020 年上半年吸引了略多的净新增开发者(40万 vs 30万),今年的受欢迎程度超过了 Kotlin。自从 Swift 成为苹果所有平台的默认开发语言以来,Objective C 的采用率一直在稳步下降。与这种从苹果应用生态系统中淘汰出来的情况相对应的是,Objective C 的排名也大幅下降,从第九位降至第十二位。

  最后,更小众的语言 —— Go、Ruby、Rust 和 Lua,每个语言的活跃软件开发者大概 150 万。Ruby 和 Lua 已经存在了二十多年,但它们的社区在最近三年基本停止了增长。相反,Go 和 Rust 似乎在积极增加开发者,不过这两门语言是否会在未来一段时间内攀升编程语言的排名还是未知数。

  在这个基础设施可以随意配置和销毁,数据和服务器配置可以在同质系统之间轻松转移的世界里,云提供商必须找到其他的差异化领域来进行竞争。对用户来说,供应商锁定的问题比以前小得多,而开发者作为决策者的崛起,让他们手中的权力更大。

  对于每一种云技术,价格和支持/文档是开发人员在采用该技术时考虑的两个最重要因素。

  在大多数情况下,这两个因素在第一和第二位之间转换,然而,对于考虑采用协调工具的开发人员来说,价格降到了第五位,而支持/文档仍以很大的优势位居首位。

  在这些开发者中,约有十分之三的人选择了开发的便捷性和速度(32%)、与其他系统的集成(31%)、社区(30%)和价格(29%)作为采用的原因,其中协调工具的价格比其他技术低 15 个百分点左右。另一方面,社区和可扩展性对于开发者选择协调工具来说,普遍更为重要。

  这种区别很大程度上是由 Kubernetes 的主导地位所驱动的。在使用编排工具的后端开发者中,有 57% 的人选择了 Kubernetes,它是最受欢迎的单一编排工具,而且重要的是,它是免费和开源的。因此,有理由相信,对于使用 Kubernetes 的开发者来说,价格根本不是问题,相反,他们更看重社区的支持,帮助他们掌握这样一个复杂的工具。

  五、绝大多数专业开发人员都参与了 DevOps,但并不一定认为自己是 DevOps 的实践者

  在我们的调查中,关于对 DevOps 的参与度的另一个观点是,当我们明确问及他们在几个新兴领域的参与度,包括区块链应用和量子计算等时,只有五分之一的开发人员报告说他们正在从事 DevOps 工作。即使我们将那些表示正在了解或对 DevOps 感兴趣的人包括在内,认为自己参与该领域的人也不超过 65%。这标志着有很大一部分开发者已经采用了 DevOps 实践,但并不一定自我认同这个词。

  关注 DevOps 生命周期的各个步骤,我们发现,开发人员首先参与的是发布频繁但规模较小的软件更新这一基本活动。与 DevOps 相关的最流行的开发流程是持续集成(CI),有 40% 的受访者采用。另有 37% 的人使用持续交付或部署(CD),它通过将所有代码变更自动部署到暂存或生产环境中来扩展 CI。

  然而,软件发布流程的完全自动化 —— 因此真正致力于 DevOps 文化--还远未实现。虽然超过一半(52%)的开发人员使用 CI 或 CD 来简化他们的部分工作流程,但只有 25% 的开发人员使用这两种做法来自动化从将代码更改集成到中央仓库到生产部署之间的所有步骤。事实证明,开发人员对完全自动化的 CI/CD 管道仍持怀疑态度。这一点从他们中近 40% 的人手动为代码部署开绿灯,以便推广到生产中就可以看出。

  应用和基础设施监控由 39% 的开发人员执行,是最常见的开发实践之一,但基础设施供应和管理(27%)就不一样了,这仍然是 IT 经理和系统管理员的领域。同样,创建自动化测试(25%)和建立 CI/CD 管道(23%)也是相当专业的任务,分别由质量保证专家和解决方案架构师主要执行。