IEEE Spectrum 杂志发布了一年一度的编程语言排行榜,这是他们发布的第四届编程语言 Top 排行榜。
这个排行榜综合了 10 个重要线上数据源,对 48 种语言进行排行,所以是非常具有代表性的。
与其他排行榜不同的是,IEEE Spectrum 可以让读者自己选择参数组合时的权重,得到不同的排序结果。
考虑到读者需求,他们提供了几个预设的权重 —— 如新兴的语言、雇主需求的语言、开源的热门语言等。大家可以定义自己的排行榜。
自定义排行榜的网址是:https://spectrum.ieee.org/static/interactive-the-top-programming-languages-2017 ,英语好的工程师可以体验一波~
读者可以自行调整权重
跟据读者的需求,2017年的编程语言排行榜如下:
Python 的排名从去年开始就借助人工智能持续上升,现在它已经成为了第一名。但排在前四名的语言 Python、C、Java 和 C++都拥有广大的用户群体,他们的用户总量也十分相近。
C# 已经重新进入前五名,它重新夺回了去年被 R 语言抢夺的位置。Ruby 已经下跌到 12 位,因此苹果的 Swift 才有机会和谷歌的 Go 语言一同进入前十大语言。这一点十分令人惊奇,因为 Swift 语言两年前才首次登入该排行榜,而当时在排行榜中它并没有进入前十,相对于 Swift 的上升,苹果的 Objective-C 跌到了第 26 名。
今年是第二年没有新语言进入排名,目前似乎开始进入巩固代码的阶段,开发者同样需要时间消化那些为云服务、移动端和大数据应用等创造的新工具。
而谈到稳定的编程语言,Fortran 仍然出现在排名的中间位置(第 28 位),Lisp 和 Cobol 分别仍然保持在第 35 位和第 40 位。这说明即使有些语言已经非常古老,但它们仍然维持一个稳定的用户群体。
如果我们从语言用户增速来看,Python 仍然是最快的。接下来就是 C、C++和 Java,但我们看到 Swift 增速排到了第五名。Swift 是苹果发布的最新语言,它可以开发 iOS 和 OS X 软件。该语言和已存在 Objective-C 代码相匹配,并且近年来也已经开源来吸引开发者。
开源语言的排行榜
通过下图可以看到, HTML 排名从第 11 上升到第 8 已经进入和前10大开源语言。
因此这里再一次反对「HTML 只是一种标记语言,它不是编程语言」这一言论。因为 HTML 是开发者用于给计算机指令而完成一些任务的语言,所以我们还是将 HTML 作为一种编程语言。并且当 HTML 和 CSS 结合时,它们可以完成非常复杂的任务,所以我们有必要将它纳入其中。
用人单位更需要什么语言的工程师?
在下图中,我们可以看到 Java 和 C 是招聘上最受欢迎语言,它们甚至都超过了 Python。
这可能是因为 Java 能应用于多平台,并且在企业级网页应用和移动端应用开发中占据了极其重要的地位,同时各种互联网公司的产品都需要使用 Java 来实现。
下面的排名是按照设计自由度排列的,我们可以对这些语言进行定制化的程度越高,排名越靠前。