導讀:自由UK web顧問Craig Buckler從事多年編程語言統計,他統計了來自GitHut、RedMonk等四個來源的語言排名情況。為了對比國內的編程語言使用情況,小編附上了codeforge網站調查發布的2014年中國程序員編程語言使用情況和拉勾網發布的2014年技術類職位薪酬報告,僅作參考。
以下為譯文:
我從事編程語言統計很多年了,有大量的數據來源包括代碼存儲庫、Q&A討論、招聘廣告、社交媒體情況、教程頁面訪問、學習視頻視圖、開發者調查等等。數據發表在不同的時間,都可以被認為是精確的,也可以被認為是有缺陷的,但是它們可以用于發現行業趨勢。
GitHut
GitHut是一個相對較新的資源,據分析目前在GitHub中有220萬活躍庫,前十為:
Javascript
Java
Python
CSS
PHP
Ruby
C++
C
Shell
C#
來源:http://githut.info/
RedMonk
2015年RedMonk語言排名是通過對GitHub和StackOverflow活躍進行分析,研究結果為:
Javascript
Java
PHP
Python
C#
C++
Ruby
CSS
C
Objective-C
來源:http://redmonk.com/sogrady/2015/01/14/language-rankings-1-15/
Jobs Tractor
Jobs Tractor語言趨勢分析了Twitter上成千上萬個工作職位,2014年9月的最新數據如下:
Java
Objective-C
PHP
SQL
Java (Android)
C#
Javascript
Python
Ruby
C++
TIOBE Index
TIOBE Index基于熟練工程師、課程以及搜索引擎的語言排名情況:
C
Java
C++
Objective-C
C#
Javascript
PHP
Python
VisualBasic.NET
Visual Basic
完全不科學的調查
如果我們結合上面四個排名情況,可以得出下面這個結果:
Java (all)
Javascript
PHP
Python
C / C++
C#
Objective-C
Ruby
Visual Basic
在這里我合并了C和C++,忽略了CSS和shell腳本。CSS并不是一種編程語言。shell腳本是無論你采用什么技術都對你有用的,不過如果你只會這個你將很難找到工作。
觀測與警示
GitHut和RedMonk的結果很相似,不過這是可以預料到的。因為它們都是使用GitHub作為主要的數據來源。都是分析公共的存儲庫,這影響了結果指向開源技術。
TIOBE受搜索引擎資源的影響,這可能就是為什么C排名靠前的原因——該語言始于1959年,擁有許多歷史文獻。新語言不可避免的出現了排名靠后的情況,例如Ruby和Go。
教育資源可能會影響結果。例如Python是常用的學校和學習編程途徑,成千上萬的學生問問題和完成項目。不過根據我的經驗來說,Python的工作相比PHP和Ruby來說是罕見的。Java也有類似的情況,因為它在教育、網絡、桌面和移動發展上有各種各樣的用途,所以它們的排名會相對靠前。
本地開發者的需求仍然很高,尤其是在相關工作的調查中可以看出。RedMonk報告Swift在不到六個月的時間里上升了46個排名達到第22位。然而應用開發是一門年輕的學科。目前有更多的Web和桌面編程職位空缺著。
最后,語言使用方面也有一個影響:
一個單一Web網站和應用需求大量的技術,這可能引發桌面語言排名靠前的情況;
你可以通過CSS、Javascript、PHP、Ruby、Python或shell腳本快速的創建幾行代碼,但是通過C、C#、Objective-C和Java這類語言卻不一定能夠完成。
趨勢
拿今天的圖表來比對2014年來自RedMonk和Jobs Tractor數據,你會發現幾乎沒有什么改變,沒有新進入或大飛躍進入前十的語言。
調查不會告訴你這些
沒有最佳語言。
鮮有開發者會通過單一技術工作而富有。如果你考慮的是客戶端Javascript,當你沒有充分了解HTML、CSS等等,你不會走的太遠。你需要的越多,學習掌握的也就越多。