IEEE Spectrum 发布了最新的第五届年度编程语言交互排行榜! Python 不但雄踞第一, 在综合指数, 用户增速, 就业优势和开源语言单项中, 全部霸占榜首. 人生苦短, 你还不用 Python 吗?
今天, IEEE Spectrum 发布了最新的第五届年度编程语言交互排行榜!
这个榜单综合了 9 个来源的 11 个指标, 对 47 种编程语言的流行程度进行排名.
当然了, 每个程序员都有自己心目中 "最好的语言", 不同的程序员有不同的需求和感兴趣的领域, 因此, IEEE Spectrum 没有将所有这些指标合并整成一个唯一的排名.
相反, IEEE Spectrum 提供了一个交互式的应用程序, 读者可以自己选择这些指标组合的权重, 从而个性化定制自己关心的排行. 这个排行榜包含了默认的权重, 即根据典型的 IEEE 会员的兴趣进行调整, 也提供其他一些专注于开源项目优点的预设. 读者可以应用筛选器, 排除不感兴趣领域的语言, 例如嵌入式或桌面环境.
通过与过去几年的榜单进行对比, 你可以窥视编程语言的流行趋势发生了怎样的变化.
Python 雄踞榜首, C++ 第二, C 语言第三
开榜!
对于典型的 IEEE 会员和 Spectrum 读者来说, 2018 年的 Top 10 编程语言是:
2018 Top 10 编程语言
在继续分析之前, 为了方面对比, 我们也呈上 2017 年的榜单:
2017 Top 10 编程语言
2018 年, Python 强势霸榜第一名! 去年, Python 虽然也名列榜首, 但得分仅比排名第二的 C 语言高出一点点, Python 的得分是 100,C 是 99.7.
但今年, Python 的优势很明显, 第一名和第二名之间的差距更大了, 排名第二的 C++ 得分是 98.4. 去年, Java 以 99.4 的成绩排名第三, 但今年排名降至第四, 得分为 97.5. 今年排名第三的是 C, 得分为 98.2.
为什么 Python 能够继续霸榜, 获得程序员的青睐呢? Top 10 编程语言排行榜的另外两个变化可能会给我们一些提示.
首先, Python 现在被归类为嵌入式语言(embedded language). 以前, 为嵌入式应用程序编写代码时, 主要倾向于使用编译语言, 以避免在处理能力和内存有限的机器上动态地计算代码的大量开销. 尽管摩尔定律可能正在消失, 但它可还没有灭亡. 许多现代微控制器现在已经拥有足够的能力来托管 Python 解释器. 用这种方式使用 Python 的一个好处是, 在某些应用程序中通过交互式提示使用附加硬件或动态地重新加载脚本非常方便. 在一个新领域中得到越来越多的使用, 这有助于提升 Python 的受欢迎程度.
Python 越来越受欢迎的另一个原因可以从 R 的小幅下降中看出. R 在 2016 年达到流行程度的顶峰, 排名第五, 去年跌至第六, 现在排名第七. R 是一种专门用于处理统计和大数据的语言. 随着对大型数据集的兴趣越来越多地转向大数据在机器学习中的应用, 用于统计和机器学习的高质量 Python 库的增加可能是使得灵活的 Python 语言成为比更专业的 R 更具吸引力的起因.
再看用户增速 (Trending) 预设下的排名, 这是一个重点关注哪些语言正在快速增长的指标. 我们看到, 谷歌的 Go 语言已经从去年的第 7 名上升到第 5 名. 但增长最快的应该是 Scala, 从第 15 名上升到第 8.Scala 是对 Java 的改进, 因此 Java 在默认预设中排名下降, 可能与 Scala 的上升趋势有关.
令人惊讶的是, ActionScript 在排名上略有提升. 去年它以 0.0 分排名垫底, 我们都准备淘汰这个语言了. 然而, 今年它最终以 1.6 分的成绩回到了倒数第二的位置, 而 Forth-- 曾经是嵌入式语言中的主力 -- 今年得了鸭蛋. 如果它明年还是鸭蛋, 就要从排名中剔除了.
IEEE Specturm 综合总排名: Top 10 变化不大, 第 11 到第 40 有颠覆性波动
IEEE Spectrum 的综合排名是由默认权重产生的, 同时, 也可以根据用户增速, 就业优势强弱, 开源和用户个性化需求对编程语言进行排名, 分别对应 "用户增速"(Trending),"就业优势"(Jobs),"开源语言"(Open), 以及 "定制"(Custom)选择.
2018 年, IEEE Spectrum 综合总排名如下, 一共有 48 个语言入选:
2018 年 IEEE Spectrum 编程语言综合排名
不难看出, 排名较靠前的几种编程语言与去年排名相比波动性并不是很大. 但通过与 2017 年排名数据做比较, 可以看出排名 11 到 40 之间的语言, 在各自相应区间范围内产生了颠覆性的排名波动.
排名下降较快的语言有 Swift,Cuda,Visual Basic 和 Rust 等, 平均下降了 6 个排名. 上升较快的语言有 Processing,Objective-C,Fortran 以及 VHDL 等, 平均上升了 5 个排名. 有趣的是, 在去年排名中的 "新起之秀" 苹果 Swift 语言却在今年排名中大幅下降, 而 Objective-C 却出现了回温的趋势.
而 J 语言和 Ocaml 依旧保持去年的排名, 分别位于第 44 位和第 45 位. 说明这些 "古老" 的语言依旧存在稳定的用户群体.
但总体来说, 在今年编程语言的综合排名中, 依旧是没有新语言的进入. 再次印证了 "我们已经进入巩固代码阶段" 这句话.
用户增速 Top 20:Python 第一, Swift 从第 5 跌至第 19
从用户增速方面来看, Python 依旧是最受欢迎的编程语言.
C++ 和 Java 这一年来的用户增速要比 C 语言快一些. 在排名前 20 的语言中, 用户增速或多或少的都发生了一些变化, 而唯独苹果 Swift 语言从去年的排名第 5 跌到了排名 19, 不由令人唏嘘.
今年的用户增速(Trending)Top 20 排名如下:
2018 年 IEEE Spectrum 编程语言用户增速排名 Top 20
就业优势 Top 20:Python 和 Java 换置, AI 让前者火得不行
接下来, 从就业优势角度来看, Python 从去年的就业优势第三名一跃成为榜首, 可以看出其影响力让在扩大.
C 和 C++ 依旧排名第二和第四, 而 Java 从去年的排名第一跌到了第三名. Matlab,Go,Objective-C 等语言对于就业的优势仍在上升. 而 Swift 对于就业的优势却大幅下降.
今年各编程语言根据就业优势 (Jobs) 排名如下:
2018 年 IEEE Spectrum 编程语言就业优势排名 Top 20
开源语言排名 Top 20:Python 依旧第一, C++ 第二, Java 第三
最后, 看 2018 年开源语言排名, Python,C++,Java 和 C 与去年排名一致, 依旧排名前四. PHP 从去年的第 12 名, 一跃到了排名第 6.
不出意外的, Swift 从 17 年的排名第五, 已然跌落至排名 20 开外了. 这或许就是苹果 Swift 语言在此次各大排名中令人大跌眼镜的原因了.
2018 年 IEEE Spectrum 开源语言排名 Top 20
IEEE Spectrum 一如既往的为用户提供了具有多样性的排名结果, 可以通过排除与用户无关的选项来进行过滤. 2017 年的排名是将来自 9 个来源中的 11 个指标进行加权和结合而产生的, 但由于今年 Dice 网站关掉了它的 API, 所以今年排名的来源变为了 8 个(对 2017 年排名的结果无影响).
若是希望与往年的数据作比较, 或者了解更多, 可以访问网站, 先点击 "Add a Comparison", 然后再点击 "Edit Ranking" 来得到比较结果(可比较的时间范围是 2014 年至 2017 年).
IEEE Specturm 2018 年最新编程语言排名, 共包含 48 种语言:
- Interactive: The Top Programming Languages 2018
- spectrum.ieee.org
来源: http://developer.51cto.com/art/201907/599872.htm