IEEE 发布了最新的编程语言排行榜。与 2019 年相比,Python、Java、C 和 C++ 依然分列总榜单前 4,而 JavaScript 取代了 R 语言成了榜单的第 5 名。此外,在趋势、需求和开源等其他子榜单中,Python 持续领先,Java 和 C 语言同样表现优异。


近日,IEEE Spectrum 发布了第七届编程语言排行榜。Python 再次名列第一,top 5 中的其他几种语言分别是 Java、C、C++ 和 JavaScript。去年的第五名 R 语言这次排名下滑到第 6,与 JavaScript 调换了位置。
根据介绍,IEEE 2020 编程语言排行榜从 8 个信息源按照 11 个指标收集数据,进而得到编程语言流行度的整体排名。
信息源包括:Google Search、Google Trends、Twitter、GitHub、Stack Overflow、Reddit、Hacker News、CareerBuilder 等,涵盖社交网站、开源代码网站和求职网站。
该调查从 GitHub 上收集了 300 多种编程语言,经过筛选后最终留下 55 种。其中包括大多数计算机用户熟悉的语言(如 Java),老牌编程语言 Cobol 和 Fortran,小众编程语言 Haskell 等。
IEEE 2020 编程语言排行榜涵盖 4 种不同的编程语言类型,分别是用于开发网站和应用的语言,用于企业、桌面和科学应用的语言,用于移动设备端的语言以及用于嵌入式环境的语言。
排名类型分为整体排名、趋势排名、工作、开源、自定义五种


该排行榜基于不同权重的各个指标得到。如果你对权重有异议,可以在 IEEE 的交互页面上设置自己想要的权重:


接下来,我们来看 IEEE 2020 编程语言排行榜的具体数据。
top 10 编程语言:Python 四连冠,Java 和 C 语言不容小觑
在该排行榜中,top 10 编程语言的整体排名如下:


去年 IEEE 的默认设置中,对找工作有利的排行方式获得了更高的权重,而今年的默认排名则对 IEEE 会员的兴趣设置了较高的权重。
在这一新设置下,我们仍然可以看到 Python 继续保持领先地位,其次是 Java 和 C 语言,分列榜单二、三名。与去年相比,前两名 Python 与 Java 的距离继续拉大,Python 依然保持强劲的上升势头。

IEEE 编程语言排行榜,2019 年和 2020 年的 top 2 分数对比。(上图为去年的数据,下图为今年的数据)

此外,Arduino 语言实现显著提升,排名从去年的 11 名跃升至第 7 名。
对于 Python 排名始终居高不下的原因,有人给出了这样一种解释,即它被越来越多地用作教学语言,因此相应指标被过分夸大了。
这与 BASIC 语言的发展历程有异曲同工之处。20 世纪 80 年代,BASIC 语言非常受欢迎,有专门的书籍、杂志甚至电台节目介绍这门语言。但是很少有专业程序员使用 BASIC,后来当家用计算机泡沫破裂时,BASIC 语言也不再那么受欢迎了。
对此观点出现了以下两种反驳意见。首先,学生也是使用者。如果只关注专业程序员和开发者的使用情况,则可能无法获得全面客观的编程语言全景图;其次,与 BASIC 不同,Python 语言有大量高质量的专用库,因此在专业领域和机器学习等高关注度领域得到频繁试用。
此外,与往年不同,今年的编程语言排名情况不可避免地受到 COVID-19 的影响。举例而言,如果在指标权重中只选择 Twitter,你会发现 Cobol 语言排在了榜单第 7 位。
这很可能是因为,4 月份新泽西州州长 Phil Murphy 在一次新闻发布会上表示政府急需能够使用 COBOL 语言的程序员,以帮助修复已经使用了 40 多年的失业保险系统。由此重新引发了人们对 Cobol 这一古老编程语言的关注。


其他排名中,Python 持续屠榜
看完了整体榜单,我们再来看其他排名类型下的编程语言排行。
在趋势榜单中,Python 仍以绝对优势展示其强劲的发展势头,Java 排名第二,C 语言、C++ 和 Go 分列三四五名。


而工作环境中需求最大的语言仍是 Python,C 语言排名第二,其次是 Java、Go 和 C++。这也是 Go 语言首次进入前十。


在开源项目最受欢迎的编程语言排行中,毫无意外,排名第一的仍是 Python,Java 和 C 语言紧随其后。


纵观所有榜单,Python 持续领先,Java 和 C 语言同样表现优异。
参考链接:
https://spectrum.ieee.org/at-work/tech-careers/top-programming-language-2020?
utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+IeeeSpectrumFullText+(IEEE+Spectrum+Full+Text)
https://spectrum.ieee.org/static/ieee-top-programming-languages-design-methods-and-data-sources-2020?
utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+IeeeSpectrumFullText+(IEEE+Spectrum+Full+Text)
https://spectrum.ieee.org/static/interactive-the-top-programming-languages-2020


©著作权归作者所有:来自51CTO博客作者mob604756eae43b的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 阁下可知文言编程之精妙?CMU本科生开源文言文编程语言,数天2K星
  2. C语言数据存储
  3. Go语言学习9-结构体类型
  4. 技术、平台、工具、语言&框架,年底应该这样把握技术方向!
  5. Go语言的2017年终总结
  6. C语言快排qsort()函数
  7. C语言练习题
  8. 小数据、高准确率的文本分类:利用迁移学习创造通用语言模型
  9. 中国高校基础科学排名,你家的学校上榜了吗?

随机推荐

  1. 使用OpenGL ES 2.0将YUV420P转换为RGBA。
  2. Activity的onStop和onPause的调用时机
  3. Android多渠道打包(三):美团多渠道打包
  4. 编译和测试android的驱动程序学习笔记
  5. 浅析Android的资源打包和安装后Apk文件的
  6. android:打造自定义searchView
  7. Android开发之Android Context,上下文(Act
  8. 安卓消息处理机制
  9. 向Android操作栏中添加操作项和浮动菜单
  10. W/System.err:at java.net.PlainDatagramS