Python 超越 C++、Java 和 C,荣获 TIOBE 年度编程语言!

发表时间: 2019-01-08 14:43

作者 | 屠敏

出品 | CSDN(ID:CSDNNews)

如同两个月前,TIOBE 编程语言社区于官网预料的那般,2018 年的年度编程语言终将在一众老牌编程语言如 Java、C、C++、Python、Visual Basic .NET 中诞生。近日,TIOBE 排行榜官方正式宣布,时隔 8 年后:Python 再一次赢得了“年度编程语言”的称号!

意外吗?不意外!

惊讶吗?不惊讶!

合乎情理吗?还行!

毕竟在过去的一年中,Python 的流行度是其他一众编程语言无法比拟的。一方面,Python 在 TIOBE 榜单中三度(2018年9月、12月、2019年1月)超越了 C++,进入了排行榜的前三甲。不仅如此,它还在另一大知名的

IEEE Spectrum 编程语言榜单

中,压住了 C++、C、Java、C#、PHP 等语言的势头,稳居第一。另一方面,根据 TIOBE 数据统计显示:2018 年期间,Python 语言相比年初共计增长了 3.62% 的市场占有率,其次是 Visual Basic .NET(3.20%) 和 Java(2.69%)。

如今的 Python 已经成为应用范围较广的编程语言之一,无形之中它也打破了近 20 年来如铁一般的 Java、C 和 C ++ 的格局。对此,TIOBE 在发布本期编程语言排行榜时,如此评价道:

Python 是当今高校中最常被教授的首选语言,它在统计领域排名第一、在 AI 编程中排名第一、在编写脚本时排名第一、在编写系统测试时排名第一。除此之外,Python 还在 Web 编程和科学计算领域处于领先地位。总之,Python 无处不在。

事实上,代表简单主义思想的 Python 凭借着易上手、可移植、可扩展、可嵌入以及拥有丰富的库等特性广受开发者的喜爱,但是一直以来,其版本的不兼容性也成为硬伤。不过值得注意的是,在明年的 2020 年,Python 2.7 即将停止支持,这意味着会有一大批 Python 项目在此之前将放弃对 Python 2.7 的支持,这其中就包括了著名的 pandas、Zulip、IPython、NumPy 等库,因此,开发者也需提前做好迁移准备。

TypeScript 迅速崛起、Kotlin 稳步增长

除此之外,2019 年 1 月的榜单中还有一些值得关注的变化:

  • 用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言 MATLAB 从第 18 名上升至第 11 名;
  • 于 2017 年 Google I/O 大会上,被宣布成为 Android 开发第一语言的Kotlin 在经过 2018 年这一年的发展,并没有像当时诸多 Java 开发者所焦躁的那样“取代了 Java”,也没有如众人嘲讽的那般无用。其实无论外界对这门语言的评价如何,从排行榜的趋势来看,它正在稳步发展,相比上个月的第 39 位,如今的 Kotlin 上升了 8 个名次,位居第 31 名,此外,TIOBE 编程语言社区还预测,2019 年期间,Kotlin 将进入排行榜的前 20 名,这得益于其在工业移动应用市场上的快速普及;
  • 作为一种静态类型的编译语言 Rust 从第 46 名上升至第 33名;
  • 在 2018 年期间,号称集 Python、C、R、Ruby 等语言所长的动态编程语言 Julia 发布了
  • 1.0 正式版
  • 。相比上述提到的其他语言,Julia 显得非常的年轻,但是从上月的第 47 名到本月的第 37 名增速来看,前景良好的同时也意味着它需要具备更完善的生态系统来满足开发者的需求;
  • 本月编程语言榜中排名变动最大的应要非 TypeScript 莫属,从第 167 名上升至第 49 名,此前 CSDN 也曾发文剖析其中缘由,具体可参考《
  • TypeScript 将取代 JavaScript!
  • 》一文。

在以上语言稳步发展的同时,还有几门语言遭遇了滑铁卢:

  • Ruby 从第 11 名下降到了第 18;
  • Erlang 从第 23 位降到了第 50;
  • F# 从第 40 名降到了第 64 位;
  • Alice 从第 26 名降到了第 66。

时隔 8 年后,Python 再次成为 Winner

上一次 Python 获得“年度编程语言”还是在 2010 年。

Top 10 编程语言 TIOBE 指数走势(2002-2019)

其他编程语言排名

第 21-50 名如下,因为是非官方发布的,所以可能存在遗漏:

第 51-100 名如下,由于它们之间的数值差异较小,仅以文本形式列出(按字母排序):

  • (Visual) FoxPro, ABC, ActionScript, Alice, AutoLISP, BBC BASIC, bc, Bourne shell, C shell, CL (OS/400), CoffeeScript, Common Lisp, Crystal, cT, Elixir, F#, Forth, Hack, Icon, Inform, Io, J, Korn shell, LiveCode, Maple, Mercury, ML, Modula-2, Monkey, MOO, MQL4, MS-DOS batch, NATURAL, OCaml, Occam, OpenCL, OpenEdge ABL, Oz, PostScript, Q, Ring, RPG, S, Solidity, SPARK, Standard ML, Tcl, Vala/Genie, VBScript, VHDL

历史排名(1998-2019)

注:以下排名位次取决于 12 个月的平均值。

【说明】

TIOBE 编程社区指数(The TIOBE Programming Community index)是编程语言流行度的指标,该榜单每月更新一次,指数基于全球技术工程师、课程和第三方供应商的数量。包括流行的搜索引擎,如谷歌、必应、雅虎、维基百科、亚马逊、YouTube 和百度都用于指数计算。具体的计算方式见这里:
https://www.tiobe.com/tiobe-index/programming-languages-definition/。

值得注意的是,TIOBE 指数并不代表语言的好坏,开发者可以使用该榜单检查自身的编程技能是否需要更新,或者在开始构建新软件时对某一语言做出选择。

详细榜单信息可参考 TIOBE 官网:
https://www.tiobe.com/tiobe-index/