我们正在升级FutureStack的注册,仅到4月30日。条款和条件适用。 现在注册

许多因素影响着编程语言在任何时候的流行程度。开发人员信任经过长期努力证明自己的语言。但是用例的变化可能导致开发人员从一种语言转移到另一种语言;在某些情况下,他们会编写全新的语言来纠正现有语言的缺陷。在任何情况下,一种给定的语言的流行通常是由于它的总体效用、它对开发人员和雇主的熟悉程度以及它在软件开发领域中不断变化的地位的某种组合。

每年,New Relic都会仔细研究编程语言使用的各种方法。我们想知道什么改变了,什么没有。我们想知道哪些语言的受欢迎程度在上升和下降;以及哪些热门的新语言正在引起轰动并在排行榜上不断攀升。最后,我们想了解更大的软件和技术趋势如何影响各种编程语言的流行——反之亦然。

即使像云计算、微服务和容器这样的现代软件实践重新塑造了我们的行业,现有的编程语言仍然保持着强大的地位。像Java和Python这样的语言在最受欢迎的榜单上名列前茅从2014年开始做这些调查, 2018年仍位居榜首。

然而,断言任何一种语言凌驾于另一种语言之上是复杂的。例如,对于什么构成了一种编程语言,什么使一种给定的语言流行,或者如何定义一种适当的方法来将一种语言置于另一种语言之上,仍然没有100%的一致意见。

软件趋势——新旧

考虑到这些,t我们去年确定的两个主要趋势还是强大的:

  1. 软件组织继续采用多语言、“多语言”的编程方法。
  2. 该行业继续向微服务和集装箱化转变。

“Polygoloc编程适合当前环境,”新的遗物高级产品经理Neha Duggal解释说:“公司希望创建可以单独工作的小型团队,让他们使用最佳工具来快速移动。”同样,她补充说,随着崛起的兴起持续交付和持续部署(CI/CD)在美国,软件团队能够更频繁地部署软件,这使他们能够更独立地工作。Kubernetes,广受欢迎的容器编配平台,帮助支持这一点——这是它成为一个事实上的分布式系统中的标准。

另一个趋势可能会动摇关键编程语言的相对流行。New Relic的高级产品经理指出:“微软的发展方式发生了转变Anil Murty.“它有获得了GitHub.并且是变得更加开源例如,他指着net核心,一个免费和开源框架,允许开发人员在Linux系统上像C#一样运行Microsoft语言,而无需支付许可费。“这将导致人们为这些语言提供更多的考虑”,“Anil预测。

参见:Microsoft的.NET核心更改了所有内容的5个原因

就业统计数据

衡量一门语言受欢迎程度的一个常见方法是看有多少雇主要求使用这门语言。我们看了工地事实上该网站分析了美国科技软件领域的职位招聘信息,并确定了2018年年中雇主最频繁要求的编程语言。我们还检查了HackerRank的在线调查在2017年10月16日至11月1日期间,共有39,000名专业和学生开发人员。

事实上 HackerRank
Java JavaScript
JavaScript Java
超文本标记语言 Python
Python c++
c# C
c++ c#
XML. PHP
红宝石 红宝石
PHP
Perl 斯威夫特

这两个列表的顶部没有太多区别,尽管顺序略有不同。我们不清楚这些差异的存在不仅仅是由于程序上的干扰。这些列表也类似于类似employer-driven列表来自去年的调查。这种连续性不应该让人感到惊讶。大多数企业本质上是保守的,即使是令人满意的变化也往往发生得很慢。

这种谨慎也可以从结果中看出软件开发现状来自网页和跨平台手机应用开发者编码SAN.该公司在2018年初进行的在线调查询问了受访者,他们打算在明年使用哪些新的编程语言。调查结果并没有反映出一系列新奇的新选择。古老的Python以18%的得票率位居榜首,尽管新版Go以17%的得票率位居第二,但多达37%的受访者表示他们根本不会考虑任何新的语言!

当然,即使是最受欢迎的课程语言也没有均匀分布。例如,根据Hackerrank,Java在金融服务部门仍然很热;C主导硬件由于其低级别API和编译器的广泛可用性;C#在政府组织中具有实验。

Python上升

虽然Java仍然是最受欢迎的编程语言的共识选择,但Python似乎有一瞬间。除了在雇主寻找的大多数列表中持有前四个职位外,还在考虑如何考虑语言公司列表,Python可能只是即将抓住抓住顶峰。至少,《经济学人》他在7月的报告中指出,Python正迅速成为“世界上最流行的编码语言”。

经济学家的数据,基于Tiobe谷歌趋势,显示Python在过去八年中从20分上升到60分(100代表了所有语言中最高的年度流量记录)。的经济学家这表明这种语言的增长是由于其简单的语法和灵活性。也许,正如IEEE,“许多现代微控制器现在拥有足够的电源来托管一个Python解释器”,“这为嵌入语言开辟了新的角色。和笨拙的穆斯蒂指出,Python是第二次使用的语言AWSλ应用程序,并可能从无服务器体系结构的持续增长中受益。最后一点轶闻证实,保罗·罗默,据报道,2018年诺贝尔经济学奖的共同得主是Python的皈依者

在编程图表的顶端

不过,在IEEE、Stack Overflow和专注于开发人员的分析公司RedMonk发布的最流行编程语言榜单中,Java和Python都没有名列前茅,这两家公司都采用了自己独特的列表编制方法,旨在了解开发人员实际使用的编程语言。

IEEE的方法结合了多种指标来达到一个“符合典型IEEE成员利益”的排名。一个交互式工具允许您调整不同资源的权重,以及语言的应用程序,以产生一个调整到您的特定兴趣的排名;在下表中,我们展示了默认的排名。堆栈溢出每年进行一次开发者调查此次看看来自的拉出请求GitHub存档和堆栈溢出的讨论。

(表id = 15 /)

在RedMonk和Stack Overflow列表中,JavaScript都高居榜首去年, 也。事实上,RedMonk列表的唯一变化是C和Object-C现在与第九位相关联;去年,C是第九和Objective-C十分之一。除了HTML,CSS和Bash / Shell推出Ruby,Cyserscript和C,堆栈溢出列表中唯一的其他更改是C#和Python交换位置。

3观看编程语言

如果您想了解程序员将来可能会使用的语言,请关注在列表中不断攀升的热门新语言。这就是我们仔细研究的原因长生不老药, 和茱莉亚

从几个方面来看,围棋是一种值得观察的语言。根据IEEE的“趋势”预设,重点考虑了快速增长的语言,围棋(也被称为戈朗)从2017年的第七名上升到2018年的第五名。在Stack Overflow上,Go现在在开发者“最想要”的语言中排名第三,在“最受喜爱”的语言中排名第五。

Neha Duggal说,这种人气的增长也可以在New Relic的许多最大的企业客户中看到,尤其是那些拥有云和无服务器用例的客户。她说,其中一个原因是开发Go是为了解决C和c++的一些缺陷,比如缺乏多核和并行计算支持。Duggal预测,用Go编写网络应用程序比用C语言更容易,因此它的使用量可能会增加。

根据在线非盈利编码教育网站,Elixir主要用于网页开发,在过去五年中越来越受欢迎FreeCodeCamp.FreeCodecamp表示,使用Elixir的职业机会是“通常收费”。Elixir在Erlang上建立并在Erlang虚拟机上运行,​​而Elixir没有出现在堆栈溢出与高薪水相关的语言列表中,Erlang顶部列表,这可能是Elixir为何是趋势的指标。Duggal说,新的遗物也看到我们的用户群体采用的Elixir采用稳步增加,我们最近宣布了一个开源的Elixir代理

最后但同样重要的是,睡在茱莉亚身上是个错误。该软件由麻省理工学院开发,结合了“Ruby、MatLab、C语言、Python、R和其他语言的最佳特性”8月茱莉亚1.0的公告,朱莉娅是“现在准备改变技术世界”。Sometimes seen as a rival to Python, Julia is making “slow but steady progress” in the Redmonk rankings, rising from 52 to 36. One reason could be that Julia programmers can make outsize salaries: Stack Overflow’s survey puts Julia at #22 on the “associated with highest salaries” list, ahead of C, JavaScript, and even Python.

那么,这一切都是什么意思?

把所有这些放在一起,编程语言在2018年的流行趋势是什么?Java和Python仍然在成熟的编程语言中处于领先地位,Python似乎稳稳地占据了第一的位置(如果还没有的话)。

类似地,多语言编程和微服务、容器和编配等趋势继续推动组织、团队和个人开发人员对编程语言的选择。虽然它们可能永远不会成为最受欢迎的编程语言,但从Go到Elixir到julia,它们都在利用自己独特的优势来吸引新的爱好者。尽管关注最流行的语言总是一个好主意,但有远见的开发人员最好在一个或多个冉冉升起的新星成为完全主流之前获得专业知识。