近日,IEEE Spectrum 重磅发布了 2023 年度编程语言榜单,揭晓了开发者使用编程语言的最新现状。该榜单结合了多个受欢迎度指标,如 Google、StackOverflow、GitHub、IEEE Xplore Digital 等等,今年共计纳入 59 种语言。这份报告不仅反映了技术趋势,也揭示了行业对技能的实际需求变化。
1、Python 连续八年名列前茅
根据榜单显示,Python 不仅在'Spectrum'综合排名中保持第一的位置,而且远超第二名 Java。这一成绩并非偶然,而是 Python 生态持续扩张的结果。
对此,IEEE Spectrum 在发布编程语言榜单时写道,Python 主导地位的增强似乎在很大程度上是以牺牲较小、更专业的语言为代价的。现如今,Python 已经成为了一种多才多艺的语言,甚至成为 AI 领域的首选语言。其丰富的库支持(如 TensorFlow、PyTorch)使得数据科学家和机器学习工程师能够高效构建模型,无需从底层编写算法。
尽管摩尔定律对高端计算的影响逐渐减弱,但低端微控制器仍能从性能提升中获益,这意味着尽管需要解释器,但现在 0.7 美元的 CPU 就能提供足够的计算能力,使 Python 成为嵌入式开发领域的竞争者。随着物联网(IoT)设备的普及,轻量级 Python 实现(如 MicroPython)正在边缘计算场景中发挥重要作用,允许开发者用同一种语言处理传感器数据和云端通信。
从长远来看,Python 的地位还在持续上升,毕竟现在许多儿童和青少年都在使用 Python 编写他们的第一款游戏或开发嵌入式设备,然后,他们可以使用同一种语言无缝地进入更高级的领域,甚至找到工作。这种低门槛与高上限的特性,使其成为教育界和企业培训的首选工具。
2、SQL 是就业最吃香的编程语言
需要注意的是,仅靠 Python 并不能成就一份职业。按照就业编程语言排行榜显示,SQL 与去年一样,高居榜首。其次,Python 以 0.891 的排名位居第二。
然而,IEEE Spectrum 官方指出,纯粹的 SQL 程序员是很难找到工作的。所以一技傍身不足以走天下。在现代软件架构中,数据库只是系统的一部分。相较而言,雇主们喜欢看到 SQL 技能与 Java 或 C++ 等其他语言的结合。在当今的分布式架构中,大量关键业务数据都保存在 SQL 数据库中,无论是网络游戏中玩家会的魔法咒语列表,还是现实生活中银行账户中的资金数额。如果你想利用这些信息做任何事情,就必须知道如何获取这些信息,这就需要 SQL 技能。
掌握 SQL 意味着能够直接操作数据层,这对于后端开发、数据分析以及运维岗位都是核心能力。配合 ORM(对象关系映射)框架,开发者可以更高效地在应用代码和数据库之间建立连接,但理解底层 SQL 查询优化依然是解决性能瓶颈的关键。
整体而言,在这份榜单中,只有 11 种语言的排名超过 0.1,并且有一大群语言的排名在 0.07 - 0.08 左右,如 Go、Matlab Visual Basic、Perl、PHP 和 R。这表明虽然主流语言占据了大部分市场,但特定领域的专业语言依然拥有稳定的受众。
3、还有一些值得关注的语言
除了以上编程语言外,还有一些在 AI 时代值得关注的语言,如 R、Fortran 等。
其中,R 语言是一种用于统计分析和可视化的语言,几年前随着大数据的兴起而崭露头角。R 语言虽然功能强大,但学习起来并不容易,它的语法和函数通常是在整个向量、列表和其他高级数据结构上执行的,令人费解。对于统计学背景的研究人员来说,R 提供了极其丰富的包来绘制图表和处理复杂数据集。
虽然 Python 库也能提供类似的分析和图形功能,但 R 仍然很受欢迎,这很可能正是因为它自身拥有特殊的性能,导致 R 编写的脚本难以移植。所以,鉴于大量的统计分析和学术研究都建立在 R 基础上,这也是 R 受到开发者重视的一层因素。在金融风控、生物信息学等领域,R 依然是标准工具之一。
这种情况与 Fortran、Cobol 有着相似之处。对于年代久远的编程语言的一种,Fortran、Cobol 留存在一些古老的应用程序中,大多数是政府相关的应用程序上。譬如,之前外媒披露,美国许多大型银行仍然需要 Cobol 程序员。
事实上,根据 IEEE Spectrum 对数百个开发人员招聘广告的审查,其看到的金融科技开发人员职位对 Cobol 技能的需求比对加密语言的需求更多。这是因为核心银行系统往往运行数十年,重写成本极高且风险巨大。维护这些遗留系统需要专门的技能,这也解释了为何这类'过时'语言依然能带来高薪机会。
此外,Go 语言作为云原生时代的宠儿,虽然在综合排名中未进前三,但在微服务和高并发场景下表现优异。MATLAB 则在工程仿真和科研计算中保持不可替代的地位。这些语言的存在证明了技术栈的多样性,开发者应根据具体业务场景选择合适的工具,而非盲目追逐热点。
4、总结与展望
2023 年的榜单清晰地展示了编程领域的格局:Python 凭借其在 AI 和教育领域的统治力稳居榜首,SQL 作为数据交互的基础设施不可或缺,而传统语言在特定行业中依然具有生命力。对于开发者而言,理解不同语言的优势与适用场景,构建复合型技能树,比单纯掌握某一种语言更为重要。未来,随着人工智能技术的进一步渗透,Python 的地位预计将继续巩固,同时跨语言协作的能力将成为衡量开发者竞争力的新标准。


