上周,TIOBE 发布了每月更新一次的编程语言排行榜,而久违的 RedMonk 也发布了 2018 年 Q1 编程语言排行榜。不妨看看通过这两份编程语言排行榜,我们能得到什么信息。
首先要说明的是,虽然 RedMonk 和 TIOBE 发布的都是编程语言排行榜,但两者的侧重方向大有不同。
对于 TIOBE 编程语言排行榜,它是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于互联网上有经验的程序员、课程和第三方厂商的数量。排名使用著名的搜索引擎(诸如 Google、MSN、Yahoo!、Wikipedia、YouTube 以及 Baidu 等)进行计算。要注意的是,这个排行榜只是反映某一门编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。
这份排行榜可以用来考查你使用的编程语言是否与时俱进,也可以在开发新系统时作为选择一门语言的依据。
与 TIOBE 编程语言排行榜每月发布一次不同,平时我们很少能看到 RedMonk 这个编程语言排行榜的更新(上次发布是 2017 年 6 月份)。RedMonk 编程语言排行榜的数据来自 GitHub 和 Stackoverflow 上对编程语言的热门程度进行的比较。
其中 GitHub 的排名是基于 GitHub 自己的语言统计,而 Stackoverflow 则是基于标签的关联。(P.S:RedMonk 是一家专注软件开发者的行业分析公司,其总部位于美国,从 2011 年开始它就开始统计行业编程语言排名)
RedMonk 希望把关于语言的讨论和使用联系起来,以深入挖掘它们未来潜在的采用趋势。
先来看看 RedMonk 编程语言排行榜 ——
RedMonk 编程语言排行榜
排名2018 年 1 月2017 年 1 月
1JavaScriptJavaScript
2JavaJava
3PythonPython
4PHPPHP
5C#C#, C++
6C ++
7CSSCSS, Ruby
8Ruby
9CC
10Swift,Objective-CObjective-C
11Scala, Shell, Swift
12Shell, R
13
14TypeScript, ScalaR
15Go, Perl
16Go
17PowerShellTypeScript
18PerlPowerShell
19HaskellHaskell
20LuaClojure, CoffeeScript, Lua, Matlab
与往常一样,RedMonk 排行榜中的前十名一如既往的稳定。JavaScript 依然稳坐第一,而用于 iOS 开发的 Swift 和 Objective-C 齐齐进入 Top 10,并列排行榜第 10 名。
RedMonk 表示,排行榜中的前十大语言具有这种相对的稳定性是十分有趣的现象。对于技术前景,最好的特征不是处于高层次的技术不断变化,而是它们保持相同的速度增长着。
更重要的是,事实上,衡量的数字是增长的,正如财务指标的增长速度一样,随着时间的推移,当项目不断更新且变得更强大时,它们的增长率是最快的。换句话说,新发布的语言自诞生之日起就已落后,这使得取代最流行的语言成为一场重大而艰苦的战斗。
对于这份排行榜,RedMonk 特别提到了快速增长的 Kotlin 语言,Kotlin 也是自在 iOS 开发中用 Swift 替代 Objective-C 以来,增长速度第二快的语言。有这样的增长速度,谷歌功不可没,因为它于 2017 年在 Google/IO 大会上被谷歌宣布成为 Android 开发的官方支持语言。
对于 Go 语言,与去年相比下降了一名,而且从轨迹图来看,并没有给人太多 Go 能很快恢复其快速上升趋势的希望。虽然作为后端开发语言,它的声誉是毋庸置疑的,但它缺乏像 Java 这种语言的多功能性。
PowerShell, TypeScript 和 R 这三门微软旗下的语言,均保持着稳步上升的趋势,鉴于排名前 20 位的增长非常重要,所以这是一个令人印象深刻的成就。我们也能看到,微软在更广泛的市场上发力多种语言的方式正在为其带来收益。
Rust 继续保持着它缓慢而稳定的上升趋势,这是一门注重安全性的语言,但不像其他大部分语言那样能快速上手。Rust 的问题与 Go 非常相似,缺乏更广泛的吸引力。
RedMonk 2018 年 1 月编程语言排行榜
TIOBE 编程语言排行榜
排名2018 年 3 月2017 年 3 月
1JavaJava
2CC
3C++C++
4PythonC#
5C#Python
6Visual Basic .NETVisual Basic .NET
7PHPPHP
8JavaScriptJavaScript
9RubyDelphi/Object Pascal
10SQLSwift
11PerlPerl
12SwiftRuby
13Delphi/Object PascalAssembly language
14Objective-CR
15Visual BasicVisual Basic
16Assembly languageObjective-C
17GoGo
18MATLABMATLAB
19PL/SQLPL/SQL
20RScratch
这次排行榜最大的亮点莫过于 Ruby,它曾获得 2006 年 TIOBE “年度编程语言”,并在 2008 年达到了热度巅峰,但之后被新语言抢去了光芒,人气大幅下滑。不过现在似乎正在重新受到关注,排名连续几个月上升,本月已跃至第 9 名。
有趣的是,Julia 和 Kotlin 在本月突围进入了前 40 名,而 Rust 和 Groovy 则被挤出了前 50。