Java 自推出以來,一直深受專業開發者的喜愛,成為一種不可或缺的編程語言。在即將結束的 2020 年里,Java 語言處于一種怎樣的發展狀態呢?近日,JetBrains 撰文從 Java 開發者地域分布、行業分布以及 Java 工具分析等幾個視角全方位地分析了 Java 語言的開發現狀。
Java 語言于 1995 年由 Oracle 公司開發,距今已有 25 年的時間了。Java 是一種廣泛使用的計算機編程語言,擁有跨平臺、面向對象、泛型編程等特性,廣泛應用于企業級 Web 應用開發和移動應用開發。在眾多編程語言中,Java 語言始終保持了強勁的發展勢頭。
今年 7 月份,IEEE 發布了 2020 年度編程語言排行榜,Java 位列整體榜單第二。此外,在開源項目最受歡迎和工作環境中需求最大的編程語言分榜單中,Java 也分列二、三名。
目前,Java 已經于 9 月 15 日更新了 15 版本。用戶或許想要深入了解 Java 當前的開發狀況,所以捷克軟件開發公司、Java 編程語言開發撰寫時所用集成開發環境 IntelliJ IDEA 的創建者 JetBrains 撰文詳細介紹了 Java 的發展現狀,包括 Java 使用地域分布、Java 行業分布、Java 工具分析等。
需要指出的是,本文中 Java 語言各項指標的調研結果基于 JetBrains 更早之前發布的《The State of Developer Ecosystem Survey 2018/2020》,想要了解詳情的讀者可以查閱原始鏈接。
2018 年開發者生態系統調查報告地址:https://www.jetbrains.com/research/devecosystem-2018/java/
2020 年開發者生態系統調查報告地址:https://www.jetbrains.com/lp/devecosystem-2020/
接下來詳細解讀 2020 年 Java 語言的發展現狀。
Java 開發者地域分布:集中在亞洲,中韓比例最高
很多人會問:「Java 開發者最多的地區在哪里,又有多少人呢?」。JetBrains 數據分析顯示, 當前全世界大約有 520 萬名專業開發者使用 Java 作為主要語言。但如果把主要使用其他編程語言但同時也會使用 Java 的專業開發者計算在內,這個數字可能會接近 680 萬。
Java 開發者最集中的區域是亞洲,大約有 250 萬開發者使用 Java 作為他們的主要語言。北美和歐洲的數字遠不及亞洲。你可能會問:「這是為什么呢?」。所以,為了更進一步弄清楚這些數據產生的原因,JetBrains 研究了 Java 開發者最多的各個國家,然后調查了為什么這些國家在專業編程開發中特別喜歡 Java 而不是其他語言。
下圖顯示了每個國家使用 Java 作為主要語言的開發者百分比(用于收集此數據的受訪者最多可以選擇 3 種主要語言)。其中,中國和韓國使用 Java 的比例最高,分別為 51% 和 50%。數據主要來自 2020 年的調查報告。
Java 在專業開發者中的使用情況
2020 年的數據顯示,超過三分之一的專業開發者使用 Java 作為他們的主要語言,并且 Java 在專業開發者心目中仍然是僅次于 JavaScript 的第二種主要語言。
使用 Java 語言開發的軟件類型
下圖展示了使用 Java 語言開發的軟件類型,包括 web 服務、實用工具(Utility )、數據庫等,其中在 web 服務中最流行使用 Java 語言,占比 52%。數據主要來自 2020 年調查報告。
使用 Java 語言最多的行業
現在清楚了為何這么多專業開發者使用 Java,Java 語言又在哪些行業中廣泛使用呢?
2020 年的數據顯示,Java 程序員主要分布在 IT 行業(42%)、金融以及金融科技(44%),但這并不意味著 Java 在其他行業沒有使用。
Java 工具
Java 版本受歡迎程度
2020 年的數據顯示,Java 8 仍然是最流行的版本。75% 的專業開發人員使用 Java 8 作為其主要編程語言。下圖顯示了 2020 年 Java 各個版本的受歡迎程度。可以清楚地看到,Java 8 的受歡迎程度遠遠領先于其他版本。
Java 流行的應用服務器
根據 2018 和 2020 年的數據顯示,在過去的 3 年里,Apache Tomcat 一直是最受歡迎的應用服務器,而 JBoss EAP 和 WildFly 的使用量則減少了一半。
Top 5 web 框架
2018 年的數據顯示,Spring Boot 和 Spring MVC 一樣流行,而 2020 年的數據顯示 Spring Boot 更加流行。數據來自所有使用 Java 作為主要語言的開發者。由下圖可知,2020 年 Top 5 的 web 框架依次為 Spring Boot、Spring MVC、JSF、Struts 2 和 Strut 1。
Top-5 JVM Profiler
2020 年的數據顯示, 24% 的用戶使用 VisualVM ,其他用戶使用 JProfiler、Java Mission Control、NetBeans profiler 和 YourKit。數據來自所有使用 Java 作為主要語言的開發者。
Top-5 IDE / 編輯器
根據 2018 年和 2020 年的數據顯示,IntelliJ IDEA 的使用量從 2018 年的 55% 增加到 2020 年的 72%,而 Eclipse or Eclipse-based、Android Studio、VS Code 以及 NetBeans 使用量相應減少了。
與 Java 相關的其他主題
討論最多的 Java 工具和其他語言
在 Stack Overflow 等 IT 社區中常常談到 Java。JetBrains 從 stack overflow 社區的問答版本中提取數據,從而找出出現最多的「Java」標簽。結果如下圖所示,縱軸表示提及 Java 的標簽,橫軸表示標簽出現的總數。
Java 社區的熱門話題
以下是 Java 用戶在 Reddit 上討論最多的主題,排名第一的問題是:現在學習 Java 語言是一個好的選擇嗎?(Is Java a good language to learn today?)