最受欢迎的编程语言是 JavaScript,Python 和 Java ,增长速度最快的是Kotlin ,而 DevOps 依旧是开发者的最青睐对象,这是关于编程语言趋势的最新报告。近日,开发者分析公司 SlashData 发布了《开发者报告(第 18 版)》。
2019 年 11 月至 2020 年 2 月期间,SlashData 对 159 个国家和地区的 17000 多名开发者进行了调查。报告指出了目前编程语言领域的几点重要趋势:
在全球 2040 万的活跃开发者,超过 50% 正在学习 JavaScript 或 TypeScript;
过去两年,有 300 万开发者加入了 JavaScript,目前全球约有 1220 万 JavaScript 开发人员;
Python 和 Java 仍然是程序员中最流行的语言,二者开发人员数量分别为 840 万和 820 万左右;
过去两年里增长最快的语言是 Kotlin;
TypeScript 已经迅速成为第九大最受欢迎的编程语言,甚至领先于 Swift;
C ++、C#、Visual Tools、Kotlin、Swift、Go、Ruby、ObjectiveC 都已是百万用户级的编程语言。JavaScript、Python、Kotlin 是过去两年来增长最快的编程语言。
编程语言趋势
针对 JavaScript 而言,类似于 Microsoft 的 TypeScript 之类的也对 JavaJavaScript 的用户量起到较强的刺激作用,使其迅速成为最受欢迎的编程语言之一。
Oracle 支持的 Java 和开源 Python 仍然是程序员中流行的语言。SlashData 估计现在有 840 万 Python 开发人员和 820 万 Java 开发人员。
其他拥有超过一百万用户的顶级语言包括 C ++,C#,Visual Tools,Kotlin,Swift,Go,Ruby,ObjectiveC。Rust 供 60 万开发人员使用,而 Lua 供 50 万开发人员使用。
大约四分之三的机器学习相关开发人员和数据科学家都在使用 Python,这反映了 AI 在当今技术中的重要性以及对 Python 使用的影响力,而且这两组中只有不到 20%的人在使用 R 用于统计计算。
Kotlin 是过去两年中增长最快的语言,吸引了 110 万开发人员,本文后续会详细介绍 Kotlin,同时这一统计结果与 GitHub 的 Octoverse 2018 报告以及 2019 年报告是吻合的,该报告侧重于开源项目,而在 2019 年 Google 的 Dart 是增长最快的语言。
根据 SlashData 的数据,在过去一年中,使用 Swift 的开发人员数量与上一年相比有所下降,现在为 200 万。
值得一提的是,调查还发现有 59%的开发人员为开源软件做出了贡献,而贡献开源软件的开发人员中的三分之一还不到 24 岁。
29% 参与者表示希望通过开源项目来提高他们的编码技能,而 26%的参与者是因为他们相信开源软件的聚合优势。同时,只有 3%的开发人员因其在开源项目上的贡献而获得报酬。
另一方面,开发人员确实希望获得公司的支持,在接受调查的所有开发人员中,有将近一半(44%)期望公司为开源社区提供相应的支持。同时,也有 39%的开源开发人员不希望公司在开源软件上推销产品和服务。
在当下的环境中,这些结果并不出乎意料,例如以往最「反对」开源的微软,如今已然成为开源平台 Github 的最大贡献者,也于 2018 年将其收购。
开发人员最青睐 DevOps
DevOps(Development 和Operations 的组合词)是一种重视「软件开发人员(Dev)」和「IT 运维技术人员(Ops)」之间沟通合作的文化、运动或惯例。多数情况下,通过使用自动化「软件交付」和「架构变更」的流程,使得构建、测试、发布软件能够更加快捷、频繁和可靠。
DevOps 重新定义了软件开发流程,将整个行业都转移到快速迭代过程中,使软件开发更具弹性和灵活性。目前采用 DevOps 已经成为软件开发演进中的重要环节,并获得了广泛的关注。DevOps 的出现是因为软件行业日渐清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。
当多数开发人员的运行机制包含 DevOps 文化时,为了提高效率,开发人员应该对整个开发过程都有一定的了解。同时,对于更有经验的开发人员来说,这可能使得整个进程更容易管理。
目前来看,DevOps 已经变得非常流行,许多公司已经采用了此策略,但基于使用 CI / CD 工具的开发人员数量,也不是所有的开发人员都愿意去尝试。DevOps 文化在面向经验不足的开发人员或是较小公司的开发人员这两方面的发展一直较慢。
如下图所示,针对 DevOps 专家来说,多数人拥有不止一个角色。可以看到这些开发人员如何描述自己角色重叠的属性。DevOps 专家中有 23%既是程序员又是系统管理员,而 27%是程序员和架构师。拥有一定开发能力前提下,对如何管理和设计系统有一定的理解,是在未来能够引领 DevOps 发展方向的重要组合。大多数 DevOps 专家存在角色重叠的情况。
如下图所示,日常情况下,开发人员几乎每天都会与 DevOps 有交集,这导致了在受访者中 59% 的开发人员都对 DevOps 感兴趣。从整个市场层面分析,这个现象非常能说明当下环境,开发过程中的持续开发和持续交付使得 DevOps 方向得到非常大的关注度。开发人员最偏向 DevOps。
从下图可以看出,正在学习和了解 DevOps 的开发人员占比 30%,大于目前已经从事研究 DevOps 的占比 27%,可以说明这一领域所积累的开发人员队伍依然很庞大。
不同方向技术的接受度。
DevOps 以及雾/边缘计算(fog/edge computing)在接受度和参与度两方面实现了最大的年同比增长。各重要方向技术的感兴趣增幅度以及接受度的对比。
「新兴语言」Kotlin
Kotlin 是由 JetBrains 设计开发并开源,在 Java 虚拟机上运行的一种静态类型编程语言,其名称来源于圣彼得堡附近的科特林岛。Kotlin 可以编译成 Java 字节码,也可以编译为 JavaScript,方便在没有 Java 虚拟机的设备上运行,因此对跨平台移动开发支持良好。
在 2017 年的谷歌开发者大会上,Google 正式宣布 Kotlin 为 Android 的官方开发语言,于是 Kotlin 也被称为 Android 世界的 Swift。
[Image: Screen Shot 2020-04-23 at 09.52.37.png]
选择 Kotlin 语言的主要原因由以下几点:
简洁:样板代码数量大为减少;
安全:避免空指针异常等整个类的错误;
互操作性强:可利用现有 JVM、Android 以及浏览器的库;
工具友好:可使用任意 Java IDE 或命令行构建。
此外,Kotlin 对于跨平台移动开发支持良好,为开发者提供了省时、高效的跨平台开发体验。
目前有很多手机 App 都有使用 Kotlin 编写,从热门初创公司到世界 500 强企业。下图为一些使用 Kotlin 开发的 App 示意图,其中不乏我们常用软件的身影,如:微信、红板报、印象笔记等。总之,Kotlin 出自 JetBrains 大厂之手,又被谷歌钦定为 Android 上最受支持的语言,具有良好的跨平台移动开发体验以及活跃的开发者社区,它能快速成长为与 Swift 同等规模的语言也就不奇怪了。