2018 IEEE最热门47种编程语言发榜!Python雄踞四项第一

简介: IEEE Spectrum发布了最新的第五届年度编程语言交互排行榜!Python不但雄踞第一,在综合指数、用户增速、就业优势和开源语言单项中,全部霸占榜首。人生苦短,你还不用Python吗?

【新智元导读】今天,IEEE Spectrum发布了最新的第五届年度编程语言交互排行榜!Python不但雄踞第一,在综合指数、用户增速、就业优势和开源语言单项中,全部霸占榜首。人生苦短,你还不用Python吗?

今天,IEEE Spectrum发布了最新的第五届年度编程语言交互排行榜!

这个榜单综合了9个来源的11个指标,对47种编程语言的流行程度进行排名。

当然了,每个程序员都有自己心目中“最好的语言”,不同的程序员有不同的需求和感兴趣的领域,因此,IEEE Spectrum没有将所有这些指标合并整成一个唯一的排名。

相反,IEEE Spectrum提供了一个交互式的应用程序,读者可以自己选择这些指标组合的权重,从而个性化定制自己关心的排行。这个排行榜包含了默认的权重,即根据典型的IEEE会员的兴趣进行调整,也提供其他一些专注于开源项目优点的预设。读者可以应用筛选器,排除不感兴趣领域的语言,例如嵌入式或桌面环境。

通过与过去几年的榜单进行对比,你可以窥视编程语言的流行趋势发生了怎样的变化。

Python雄踞榜首,C++第二、C语言第三

开榜!

对于典型的IEEE会员和Spectrum读者来说,2018年的Top 10编程语言是:


image

2018 Top 10编程语言


在继续分析之前,为了方面对比,我们也呈上2017年的榜单:

image

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个语言入选:


image

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排名如下:

image

2018年IEEE Spectrum编程语言用户增速排名Top 20

就业优势Top 20:Python和Java换置,AI让前者火得不行

接下来,从就业优势角度来看,Python从去年的就业优势第三名一跃成为榜首,可以看出其影响力让在扩大。

C和C++依旧排名第二和第四,而Java从去年的排名第一跌到了第三名。Matlab、Go、Objective-C等语言对于就业的优势仍在上升。而Swift对于就业的优势却大幅下降。

今年各编程语言根据就业优势(Jobs)排名如下:


image


2018年IEEE Spectrum编程语言就业优势排名Top 20

开源语言排名Top 20:Python依旧第一,C++第二,Java第三

最后,看2018年开源语言排名,Python、C++、Java和C与去年排名一致,依旧排名前四。PHP从去年的第12名,一跃到了排名第6。

不出意外的,Swift从17年的排名第五,已然跌落至排名20开外了。这或许就是苹果Swift语言在此次各大排名中令人大跌眼镜的原因了。

image


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种语言:
https://spectrum.ieee.org/static/interactive-the-top-programming-languages-2018

原文发布时间为:2018-08-01
本文来自云栖社区合作伙伴新智元,了解相关信息可以关注“AI_era”。
原文链接:2018 IEEE最热门47种编程语言发榜!Python雄踞四项第一

相关文章
|
18天前
|
存储 数据挖掘 开发者
Python编程入门:从零到英雄
在这篇文章中,我们将一起踏上Python编程的奇幻之旅。无论你是编程新手,还是希望拓展技能的开发者,本教程都将为你提供一条清晰的道路,引导你从基础语法走向实际应用。通过精心设计的代码示例和练习,你将学会如何用Python解决实际问题,并准备好迎接更复杂的编程挑战。让我们一起探索这个强大的语言,开启你的编程生涯吧!
|
24天前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
24天前
|
机器学习/深度学习 数据挖掘 Python
Python编程入门——从零开始构建你的第一个程序
【10月更文挑战第39天】本文将带你走进Python的世界,通过简单易懂的语言和实际的代码示例,让你快速掌握Python的基础语法。无论你是编程新手还是想学习新语言的老手,这篇文章都能为你提供有价值的信息。我们将从变量、数据类型、控制结构等基本概念入手,逐步过渡到函数、模块等高级特性,最后通过一个综合示例来巩固所学知识。让我们一起开启Python编程之旅吧!
|
24天前
|
存储 Python
Python编程入门:打造你的第一个程序
【10月更文挑战第39天】在数字时代的浪潮中,掌握编程技能如同掌握了一门新时代的语言。本文将引导你步入Python编程的奇妙世界,从零基础出发,一步步构建你的第一个程序。我们将探索编程的基本概念,通过简单示例理解变量、数据类型和控制结构,最终实现一个简单的猜数字游戏。这不仅是一段代码的旅程,更是逻辑思维和问题解决能力的锻炼之旅。准备好了吗?让我们开始吧!
|
10天前
|
Python
Python编程入门:从零开始的代码旅程
本文是一篇针对Python编程初学者的入门指南,将介绍Python的基本语法、数据类型、控制结构以及函数等概念。文章旨在帮助读者快速掌握Python编程的基础知识,并能够编写简单的Python程序。通过本文的学习,读者将能够理解Python代码的基本结构和逻辑,为进一步深入学习打下坚实的基础。
|
15天前
|
数据采集 存储 数据处理
Python中的多线程编程及其在数据处理中的应用
本文深入探讨了Python中多线程编程的概念、原理和实现方法,并详细介绍了其在数据处理领域的应用。通过对比单线程与多线程的性能差异,展示了多线程编程在提升程序运行效率方面的显著优势。文章还提供了实际案例,帮助读者更好地理解和掌握多线程编程技术。
|
17天前
|
存储 人工智能 数据挖掘
Python编程入门:打造你的第一个程序
本文旨在为初学者提供Python编程的初步指导,通过介绍Python语言的基础概念、开发环境的搭建以及一个简单的代码示例,帮助读者快速入门。文章将引导你理解编程思维,学会如何编写、运行和调试Python代码,从而开启编程之旅。
36 2
|
18天前
|
存储 Python
Python编程入门:理解基础语法与编写简单程序
本文旨在为初学者提供一个关于如何开始使用Python编程语言的指南。我们将从安装Python环境开始,逐步介绍变量、数据类型、控制结构、函数和模块等基本概念。通过实例演示和练习,读者将学会如何编写简单的Python程序,并了解如何解决常见的编程问题。文章最后将提供一些资源,以供进一步学习和实践。
30 1
|
26天前
|
设计模式 算法 搜索推荐
Python编程中的设计模式:优雅解决复杂问题的钥匙####
本文将探讨Python编程中几种核心设计模式的应用实例与优势,不涉及具体代码示例,而是聚焦于每种模式背后的设计理念、适用场景及其如何促进代码的可维护性和扩展性。通过理解这些设计模式,开发者可以更加高效地构建软件系统,实现代码复用,提升项目质量。 ####
|
21天前
|
存储 网络协议 IDE
从零起步学习Python编程
从零起步学习Python编程