IEEE Spectrum 程式語言排行榜一年發布一次,這個排行榜已經連續發布了六年。每個開發者都需要相對流行的網站統計數據,與其他的語言排行榜不同,IEEE Spectrum 可以讓開發者自己選擇參數組合時的權重,得到多樣的排序結果。
而且 IEEE Spectrum 今年進行了重大改革,針對求職者內置了一些預設的權重,改變了一些基礎指標,從 8 個數據源的 11 個指標中獲取數據。程式設計師還可以應用篩選器,以排除不感興趣的領域程式語言,這樣一來,結果會顯得更鮮明。但是,基本的思想和方法仍然相同:將多個來源的數據組合起來,對程式語言的流行程度進行排名。
那麼下面,讓我們看看今年的排名是怎樣的,流行的趨勢又是否有所變化呢?
作者 | 黃浩然
責編 | 屠敏
出品 | CSDN(ID:CSDNnews)
IEEE Spectrum 2019 十大程式語言排行如下:
Python穩居榜首,且連續奪冠三年
儘管基本指標有所變化,但總體的結果仍然相似,Python 始終處於領先地位。Python 的流行在很大程度上是受了大量可用專用庫的驅動,特別是在人工智慧領域中。事實上,Keras 庫對深度學習開發人員影響很大。但是深入學習並不是Python 產生巨大的影響的唯一領域,微處理器計算能力的顯著提高意味著嵌入式版本的 Python:如 CircuitPython 和 MicroPython,正越來越受製造商的歡迎。
而 Python 為何能連續三年奪冠?
Python 的高速發展主要原因是軟體工程的蓬勃發展,它吸引了許多零基礎的初學者。Java 的編程方法對於初學者來說太冗長了,單單想要完全理解和運行在 Java 中的「hello world」這樣的簡單程序,你就需要去了解類、靜態方法和包。在 C 語言中,這要簡單一些,但是在內存管理上還是會出現一些問題。但在 Python 這裡,就只是一行代碼的事。所以,Python 越來越流行,被越來越多的開發者使用。
Java、C 和 C++ 的戰局
排在二三四名的是 Java、C 和 C++,這個小組的成員長期互相爭鬥,無論在哪個排行榜都是你來我往,但都被Python穩壓一頭。而且在調整了指標後,這之間的距離有所擴大,C++比Python低了12.5。而Java從去年的第四名回升到了第二名,三者的排名和去年的剛好相反。
那麼 Java 為什麼依然能榮登第二呢?
第一,Java 語言依然是被最廣泛使用的程式語言之一。目前 Java 語言在 Web 開發領域、Android 開發領域、大數據開發領域以及各種後端服務開發領域都有廣泛的用戶基礎,可以說 Java 語言的生態環境已經比較健全了,這種情況下,採用 Java 語言將會明顯降低程序開發的風險,因此 Java 語言將依然是軟體團隊最為常見的選擇之一。
第二,隨著 5G 標準的逐漸落地,未來物聯網的發展將會迎來更多的機會,而物聯網的發展必將帶動大數據、雲計算、人工智慧領域的發展,而 Java 在這些領域都有比較廣泛的應用,所以未來 Java 語言在產業網際網路階段,也會有比較普遍的應用。
如下是去年 TOP 10 排名:
Swift衝至第九名!
對比去年的榜單,PHP 在前十的排名中已經不見蹤影,Go 則下跌了一個名次。
另外,去年不在榜單上的 Swift,今年衝到了第九名,這是為何?
Swift 是由蘋果創建的強大而直觀的程式語言,它的使命是用於構建蘋果體系內的應用程式。而且Swift 可以在蘋果體系內的所有平臺上構建應用程式,諸如iOS、Mac、Apple TV 和 Apple Watch。
蘋果公司為了順應時代於 2014 年推出了 Swift 語言,目前已經是第四個版本了。Swift 優勢在於融合了現代語言特性,是一門非常容易學習的語言。而且經過這5年發展,Swift 生態圈基本成熟,目前有大量的開原始碼可供使用。
而且,2019 年 WWDC 大會上,蘋果在壓軸環節向大眾宣布了基於 Swift 語言構建的全新 UI 框架 —— SwiftUI。開發者可通過它快速為所有的 Apple 平臺創建美觀、動態的應用程式。在介紹過程中,蘋果公司軟體工程高級副總裁 Craig Federighi 演示了如何將一百行代碼簡化為大約十幾行。
從以上的信息可以看出 Swift 的發展趨勢,而今年的排行榜也證明了這一點。
R 語言為何能上升?
數字運算語言 R 今年排名第五,比去年上升了兩名,儘管它是一種比其他語言更專業的語言,但伴隨著越來越多的大數據,近年來一直保持著它的流行度。
雖說 R 語言常年被 Python 打壓,可仍然比去年提升了兩名,這要得益於它的幾個特性:
命令模式。Python 雖然也支持命令模式,但是相對來說,更偏向於流程控制語句。R 本身基本上不需要用到流程控制(當然,它也支持流程控制)。
交互性。這是命令模式的一個特點,敲回車,出結果,但是又不像 SPSS那種用滑鼠扎針的交互方式。
統計學特性。這是 R 語言最大的特點,比如:
賦值的時候,不用等號(=),用的是指向(<-),帶來的問題就是要寫 a < -5 這種語句,就需要 a < (-5) 這樣寫。
其他程式語言排名
正如文章開頭所述,除了默認的權重產生的排行榜之外,IEEE Spectrum 還提供了用戶增速趨勢、就業需求、開源、自定義這四個選項,開發者可根據自身需求或興趣查看排行榜。
IEEE Spectrum 完整的排行榜:Matlab 位居第八,Fortran 38位
位居第八,由 MathWorks 開發並用於數值計算的專有語言 Matlab 的出現可能讓一些人驚訝,它反映了該語言在硬體工程中的突出地位,特別是對於那些對運行模擬感興趣或者通過 MathWorks 的圖形 Simulink 包創建控制系統的用戶。
在前 10 名之下,有一些值得注意的,尤其是 Fortran,儘管已有 60 多年的歷史,仍然排在第 38位,可見原始科學計算語言依然具有巨大的傳統力量。並且,隨著 2018 年最新 Fortran 標準的發布,該語言仍在積極開發中。
用戶增速程式語言排行榜:JavaScript上升
隨著 Nodejs 的大面積使用,前端開發後端化是一個較為明顯的趨勢,JavaScript 正在從傳統的前端開發走向後端開發,這對 Java 語言的應用也會造成一定的影響。目前 JavaScript 的開源項目非常多,這在一定程度上也促進了 JavaScript 的應用和發展,所以對於 Java 程式設計師來說,未來掌握JavaScript 也是有一定必要的。
就業需求程式語言排行榜:PHP下滑
AI和大數據時代的趨勢很大,Python 開發者人數正在增加,人工智慧時代 PHP確實有點尷尬,導致很多人各種原因轉了 Python, 10~15 年後還有多少 PHP 開發者不得而知,或者 PHP 找到了新的切入點,就像沉默了幾十年的Python 如今找到了自己的歸屬地一樣,需要時間來檢驗。
開源程式語言排行榜:Python、Java、C、C++ 位置依然堅挺
該排行榜中,前四名相對去年排名並沒有變化,依舊是 Python、Java、C、C++。其中 Java 上升了一位,排名第二;其次,素有世界上最好程式語言之稱的 PHP 下降至11 名。
值得一提的是 JavaScript 上升了 3 名,現在是第五名。
更多詳細內容詳見 IEEE Spectrum 官網:https://spectrum.ieee.org/computing/software/the-top-programming-languages-2019
【END】
隨著智能物聯迅速的興起,場景聯動越來越普遍,作為敲門磚的連接服務該如何實現?
360 資深工程師深度揭秘 360 IoT 雲平臺連接服務的技術框架實現細節、物聯網協議應用和多協議,多網絡的落地實踐以及連接服務未來的演進方向。
技術乾貨來襲!立即掃碼報名!
熱 文 推 薦
點擊閱讀原文,輸入關鍵詞,即可搜索您想要的 CSDN 文章。