近日,IEEE Spectrum 推出 了一个最流行的编程语言排行榜。排行榜筛选了 12 项指标,综合了 10 个来源(含 IEEE Xplore、Google、GitHub)的数据,最终评选出了下面这个排行榜(满分 100,得分越高排名越靠前),其中的十大编程语言分别是:
1、 Java
2、 C
3、 C++
4、 CNo.
5、 Python
6、 JavaScript
7、 PHP
8、 Ruby
9、 SQL
10、MATLAB
按照类型排名,各类主要编程语言的排行榜分别是:
编译型语言:
1、 Java(总排名 No.1)
2、 C(No.2)
3、 C++(No.3)
4、 C#(No.4)
5、 Objective-C(No.16)
解释型语言
1、 Python(No.5)
2、 JavaScript(No.6)
3、 PHP(No.7)
4、 Ruby(No.8)
5、 Perl(No.11)
6、 HTML(No.12)
数据语言
1、 SQL(No.9)
2、 MATLAB(No.10)
3、 R(No.13)
其中值得注意的是,不少古董级的语言依然具有很强的生命力。比方说汇编语言还排在 15 的高位,VB(No.14)仍然受追捧,甚至 Delphi 也挤进了前 30(No.27)。而有的语言则属于典型的大树底下好乘凉,明显受到了推出者的强势影响。比如 Objective-C 得益于苹果生态体系的强大(Swift 因为推出时间短未进入前 30),而 Go 则很大程度上是因为 Google 的作用。
尽管我们并不清楚榜单排行的具体指标是什么,但是如果想通过语言流行度来决定学习方向并不是好的做法。因为语言知识工具,关键在于你想用它来做什么。Michael McLaughlin 提出了自己的建议:
开发商业软件,推荐:Java, C++, CNo., and AIDE – Android IDE (适用于 Java 和 C++ 源码)
OS X and iOS 开发:Objective-C
开发工具:C、C++ 与 Python
Web 开发:Python、PHP、Ruby 与 Perl
数据分析:SQL、MATLAB 和 R
也有不少网友对这个榜单提出了一些质疑。比方说,如果以图灵完整性来衡量,HTML 算语言吗?