TIOBE 3月編程語言排行榜:Java、C++慘遭嫌棄,Python勢頭迅猛

取代不了的 Java、擋不住勢頭的 Python、吐槽不盡的 C++......數百種編程語言中也僅有那么幾種當屬主流語言,而如今這些主流的編程語言局勢如何?身處其中的開發者又需要了解哪些內容?本文無意挑起編程語言爭端,而是希望以最新的趨勢一窺當前各大主流語言的發展現狀。

日前,一月一更的 TIOBE 編程語言社區最新發布了 2019 年 3 月排行榜。

Python 從小眾語言到主流的逆襲

從榜單來看,曾經鐵打的 Java、C、C++ 局勢,早已在數月前被 Python 的闖入而打破。而究其根由,并非是 C++ 的應用領域正在逐漸縮減,而是隨著人工智能、機器學習的崛起,適用于該領域的 Python 才會水漲船高,帶起了市場份額。這也是為什么在 Java、C、C++、Visual Basic .NET 等一眾編程語言使用率增幅放緩的情況下,Python 仍能以 2.39% 的增率保持強勁的增長勢頭。

TIOBE 編程語言排行榜 Top 20

而對于 Python 的未來,根據央廣網報道,2018 年中國人工智能核心產業規模已達到 686 億元,在2019 年中,科技部副部長李萌表示將著重加快項目部署實施,強化基礎研究,加大芯片、工具和平臺等研發力度。因此在人工智能項目將實現規模化落地的前景之下,作為基礎研發支持的 Python 語言,至少在國內的大環境中,應用需求也將進一步擴大。

“眾口難調”的編程語言

此外,通過 3 月的編程語言排行榜,我們雖然看到了 Java、C、C++ 等語言位于 Top 5 的位置,但事實上,在日常應用中,開發者對其的吐槽也越來越盛。

排名第一的 Java,依然有人嫌棄

在過往的這些年中,無論是 Google 扶持的 Kotlin、還是其親兒子 Go 語言、亦或是高可靠性的 Erlang,均對語言界的龍頭老大 Java 發起過挑戰,但最終都不一而終。對此,在 CSDN 最新發布的 2018 中國軟件開發者報告中,前豌豆莢技術負責人、現輕芒聯合創始人范懷宇評價道:

多年以來,Java 一直都是最常用的語言 ,一方面是因為 Java 可以用在前后端開發,具有很好的普適性;另一方面,因為 JVM 虛擬機和 Java 生態的完善。在前端開發上,Kotlin 等 JVM 上的其他語言表現非常優異,和現有的 Java 類庫也可以無縫兼容,會逐步在很多場景下取代 Java。不過,在服務端開發上,Java 依然是最平衡的選擇。Java 的 Web 框架經過千錘百煉已經可以支撐足夠大的并發,JVM 經過長年優化性能表現也而非常出眾,而 Java 的各種類庫、統一的編程模型、豐富的人才儲備,也可以滿足各種場景的訴求。

不過自從 Oracle 宣布 Java 版本以六個月為周期更新后,Java 的更新速度一度成為諸多開發者所詬病的點。當前,Java 12 預計將于本月內發布,而Java 13 也已處于 Early-Access(EA,早期訪問)階段,對此,不過不少開發者大呼:

Java 更新太快不一定是好事;

當前 Java 8 仍是主流;

被調到某銀行,項目開始前告訴我盡情發揮。部署時各種問題,Spring Boot 換成普通 Maven 再換成 J2EE 項目,Spring 從 5.7 換成 4.3 再到 3.1,JDK 從 8 降到 7,愣是沒部署成功。不說了我接著看 1.6 特性去了;

Java 9 及以上都不支持 32 位系統。讓我這位拿著僅支持 32 位 Win10 系統的 ATOM 上網本給別人演示項目的情何以堪。

Oracle 應該把 Java 語言維護交還社區,專心做好 JVM 就行了,希望以后 Java 和 JVM 可以成功拆分,獨立發展。

C++ 的模塊化問題

廣泛應用于游戲、科學計算、分布式應用、操作系統、嵌入式等領域的 C++,似乎在最新版本的 C++ 20 中遭遇了難題,即 C++ 標準委員會欲將 Modules(模塊化)加入 C++ 20 中。對此,有網友認為,這無用的模塊設計最終會害死自己。

同時,也有不少技術人表示,C++ 正變得越來越易用,不過這門語言該瘦身了,哪本 C++ 教程不是一千頁以上的?!

其他編程語言排名

除此之外,在 TIOBE 榜單的 Top 10 中,C# 自從去年 7 月被 Visual Basic .NET 反超后,市場份額持續下滑,如今 Visual Basic .NET( 6.429%)的使用率幾乎是 C#(3.267%)的一倍。同時 JavaScript、Visual Basic 的名次均有所下降,不過稍許的浮動也屬正常范疇。

在本月編程語言排行榜中,還值得注意的是,PowerShell 進入了 TIOBE 排行榜的前 50 名,位于第 45 名。PowerShell 是面向 Windows 和 Windows Server 的自動化平臺和腳本語言,從誕生至今已經超過 12 年。事實上,去年微軟旗下的 PowerShell 團隊才推出 PowerShell Core 的第一個版本,并以 6.0 后綴來命名。想來 Powershell 之所以會再次受歡迎,可能與之相關,因為 PowerShell Core 基于 .NET Core 上可以構建開源項目,也能在 Windows、MacOS、Linux、Ubuntu、Debian、OpenSUSE 等多個平臺上運行。

TIOBE 編程語言排行榜第 21-50 名

第 51-100 名如下,由于它們之間的數值差異較小,僅以文本形式列出(按字母排序):

4th Dimension/4D, ABC, ActionScript, Alice, Apex, APL, Avenue, bc, Bourne shell, C shell, CL (OS/400), Clojure, Common Lisp, Crystal, cT, Elixir, Elm, Emacs Lisp, F#, Forth, Icon, IDL, Inform, Io, Korn shell, LiveCode, Maple, Mercury, Modula-2, Monkey, MQL4, MS-DOS batch, NATURAL, OpenCL, Oz, PostScript, Pure Data, Q, Ring, S, SPARK, SPSS, Standard ML, Stata, Tcl, Tex, TypeScript, Vala/Genie, VBScript, VHDL

Top 10 編程語言 TIOBE 指數走勢(2002-2019)

歷史排名(1998-2019)

注:以下排名位次取決于 12 個月的平均值。

編程語言“名人榜”(2003-2018)

【說明】

TIOBE 編程社區指數(The TIOBE Programming Community index)是編程語言流行度的指標,該榜單每月更新一次,指數基于全球技術工程師、課程和第三方供應商的數量。包括流行的搜索引擎,如谷歌、必應、雅虎、維基百科、亞馬遜、YouTube 和百度都用于指數計算。具體的計算方式見這里:https://www.tiobe.com/tiobe-index/programming-languages-definition/。

值得注意的是,TIOBE 指數并不代表語言的好壞,開發者可以使用該榜單檢查自身的編程技能是否需要更新,或者在開始構建新軟件時對某一語言做出選擇。

最后:

威心公粽號拿資料:速學Python

這里有我自己整理了一套最新的python系統學習教程,包括從基礎的python腳本到web開發、爬蟲、數據分析、數據可視化、機器學習等。送給正在學習python的小伙伴!這里是python學習者聚集地,歡迎初學和進階中的小伙伴!


?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容