T
IOBE 程式語言榜單已最新出
爐,一起來看看本月有什麽值得關註的新變化吧!
1、被 C# 超越,Java 即將跌至第 5 名?
去年 12 月, Java 歷史首次被 C++ 超越、 跌出榜單前三的事實,令許多程式設計師深感意外,由此發出不少 「 Java 英雄遲暮?」、「 Java 真的已死? 」的疑惑。自此以後, 這 10 個月來 Java 在 TIOBE 程式語言榜單的排名再也沒上過前三,與 C++ 之間的差距也日益擴大。
可能很難預料到,昔日常年霸榜的 Java 在被擠出 Top 3 之後, 如今甚至還面臨著被 C# 超越、即將跌至第 5 名的危險。
從 市場份額來看,Java 在 Top 20 程式語言中的降幅最大,為 3.92%;反觀 C# 的漲幅高達 3.29%,彼此僅相差 1.2% —— 按照 T IOBE 的官方說法:「 C# 和 J av a 之間 的差距從未如此之小。 如果這種趨勢保持不變,預計 C# 將在 兩個月後超過 Java。」
回顧 C# 誕生的這 23 年來,它與 Java 之間因相似的特性與套用領域一直競爭不斷。2000 年, 微軟釋出 由 C 和 C++ 衍生出來的物件導向的程式語言 C #,也是 執行於 . NET Framework 和 .NET Core(完全開源,跨平台)之上的高級程式設計語言 ,由 Delphi 和 TypeScript 之父、.NET 創立者 Anders Hejlsber g 開發 。
乍看之下, C# 與 Java 驚 人地相似:物件導向編程的語言,有著 幾乎同樣的語法, 都需要編譯成中間程式碼 再執行,都支持跨平台,都支持單一繼承和多介面實作,都提供自動垃圾回收功能,都支持強參照和弱參照,此外例外處理方式也幾乎相同…… 不過,C# 與 Java 之間的 區別也很明顯:C# 借鑒了 Delphi 的一個特點,與 COM(元件物件模型)直接整合,還支持在建立陣列時既定義陣列大小又 給陣列賦值,同時支持使用預處理常式指令進行條件編譯和 goto 語句等等。
然而, Java 受歡迎程度下降的原因不僅是因為後來者 C# 的各種優勢,也因為 甲骨文公司在 Java 8 之後 決定 引 入付費授權模式。而微軟在 C# 上則是采取了相反的策略:先是只能用作商業工具 Visual Studio 的一部份使用,如今 C# 已是免費開源的,因此受到了許多開發人員的歡迎。
除了付費授權模式,TIOBE 還推測了 一些 Java 逐年衰落的其他原因,例如 J a va 語言的定義在 過去 幾年裏 沒 有 太 大變化,相比之下「 其完全相容的直接競爭對手 Kotlin 更容易使用 ,而且免費 」 —— 似乎是印證了這個說法,在 本月的 Top 20 榜單中, Kotlin 繼上個 月 強勢「殺回」 Top 20 後,本月再次上升兩個名額,到了第 18 名。
2、其他程式語言
以下為 Top 21-50 的 編 程語言榜單:
第 51-100 名如下,由於它 們之 間的數值差異較小,僅以文本形式列出(按字母 排序):
4th Dimension/4D, ABC, ActionScript, Apex, APL, Ballerina, bc, CL (OS/400), Clean, Clipper, CLIPS, Clojure, Crystal, Curl, Eiffel, Elixir, Erlang, Forth, Groovy, Hack, Icon, IDL, Io, J, J#, LabVIEW, Ladder Logic, LiveCode, ML, Modula-2, MQL5, NATURAL, Nim, OCaml, OpenEdge ABL, PL/I, PostScript, Pure Data, Q, Racket, Raku, REXX, RPG, Smalltalk, SPARK, SQR, Tcl, TOM, VHDL, Wolfram
3、Top 10 程式語言 TIOBE 指數走勢(2002-2023)
4、歷史排名(1988-2023)
註:以下排名位次取決於 12 個月 的 平均值。
5、程式語言「名人榜」(2003-2022)
【說明】:
TIOBE 程式語言社群排行榜是程式語言流行趨勢的一個指標,每月更新,這份排行榜排名基於全球技術工程師、課程和第三方供應商的數量,其中包括了流行的搜尋引擎以及技術社群,如 Google、百度、百科、CSDN、必應、 Hao 123 等等。具體的計算方式詳見:https://www.tiobe.com/tiobe-index/pro gramming-languages-definition/。請註意這個排行榜只是反映某個程式語言的熱門程度,並不能說明一門程式語言好不好,或者一門語言所編寫的程式碼數量多少。
這個排行榜可以用來考察你的編程技能是否與時俱進,也可以在開發新系統時作為一個語言選擇依據。
詳細榜單資訊可參考 TIOBE 官網:https://www.tiobe.com/tiobe-index
END