搜尋
首頁Javajava教程盤點最受歡迎的 Java 工具

Java程式設計語言

java 是一種可以撰寫跨平台應用軟體的物件導向的程式設計語言,是由Sun Microsystems公司於1995年5月推出的Java程式設計語言和Java平台(即JavaEE(j2ee) , JavaME(j2me), JavaSE(j2se))的總稱。


最流行的工具並不一定是“最好的”,對於開發來說,什麼是最好的,取決於使用場景。然而,當選擇工具時,流行程度是不可忽視的重要因素,並不是因為工具的流行增加了其價值,而是因為廣泛使用的社區帶來了無價的資源和支持。 

流行的工具比較容易學習,因為會有很多人樂意幫助你。如果是開源的話,麻煩就更少了。因為有更多的人在審核程式碼和進行測試,能考慮到更多的情況。 

在許多情況下,都會有一個對立的競爭對手,像是Apache和Nginx——兩台web伺服器。 Apache被使用的更多,但是頂尖的網站使用Nginx更多,也就是說,頂級工程師更青睞Nginx——在許多情況下,流行度可能是區分工具最重要的一點。 

這份清單包含了開發Java應用程式所需的大部分工具。包括最受歡迎的、次流行的,他們都有強大的社區支持。 Java的初學者需要認識這些工具,熟悉生態系統。 

語言版本 

最受歡迎的:Java 8 

次流行的:Java 7 

Java 8可能是所有版本中被接受最快的。可能是因為,Java 8帶來了期待已久的現代語言特性,例如lambda表達式,解決了長久以來Java飽受人們批評的冗長囉嗦的缺點。當然,性能也是一大面向。 

雖然現在很多Java應用和主要的應用都是用Java 8寫的,但也有很大數量的Java應用依然使用Java 7或6。 

我不會蹚Java EE和Spring這趟渾水,因為一談論這個,總是伴隨著很多爭吵,在用戶數量方面,似乎相當。也有一些第三方開發者兩者都用。

資料 

RebelLabs Java Tools and Technologies Landscape Report 2016(figure 1.9, 1.10)

DZone Guide to the Java Ecosystem, 2015 edition (graphs

DZone Guide to the Java Ecosystem, 2015 edition (graphs 1 & 2) IntelliJ IDEA(有爭議) 

次流行的:Netbeans 


Eclipse和Netbeans都是免費、開源的。 Eclipse以強大的社群和豐富的外掛而聞名(開發Eclipse外掛非常方便),這讓Eclipse平台的擴充性變得很強,但這個IDE啟動比較慢。 Netbeans透過整合了Maven和Git等來讓自己變得與眾不同。 IntelliJ以性能著稱,並且是一款商業產品。它有免費和付費兩種版本。

資料 

RebelLabs Java Tools and Technologies Landscape Report 2016 (IntelliJ IDEA was the top IDE in this report, figure 1.11)

DZone Guide to the Java Ecosystem, 2015 )

Web Framework 

最受歡迎的:AngularJS,SpringMVC 

次流行的:Java Server Faces(JSF) 


三個調查中的兩個都顯示Spring MVC的受歡迎度比JavaSF)高,DZone的調查顯示Spring MVC和JSF之間不分伯仲。隨著JavaScript框架在web方面的發展,也許這些都不再重要了。有一個調查顯示,AngularJS相比與純Java框架,在前端方面更受歡迎。

資料 

RebelLabs Java Tools and Technologies Landscape Report 2016 (figure 1.16)

DZone Guide to the Java Ecosystem, 2015 edition (chart 3, paragraphtie and Springi Java Ecosystem, 2015 edition Poll

應用伺服器 

最受歡迎的:Tomcat 

次流行的:Wildfly 

很久以來,Tomcat都是最受歡迎的Java應用程式伺服器框架。它是一個輕量級框架,在一些其他調查中,Jetty——另一個輕量級應用框架——領先於Wildfly——最受歡迎的Java EE支援的應用伺服器。 Tomcat在輕量級Java應用方面無疑是霸主地位,是微型服務架構的最佳選擇。


資料 

RebelLabs Java Tools and Technologies Landscape Report 2016 (figure 1.13)

DZone Guide to the Java Ecosystem, 2015 edition(chart 4)
DZone Guide to the Java Ecosystem, 2015 edition(chart 4)

server use cases)

測試框架 

單元測試 

最受歡迎的:JUnit 

名副其實的最佳Java測試框架 

模擬 

名符其實的最佳Java測試框架 

模擬 
模擬

最受歡迎的:Mockito 

最受歡迎的Java模擬測試框架。 

自動化Web瀏覽測試 

最受歡迎的:Selenium 

Selenium只是自動化瀏覽測試。開發者經常使用這個工具來配合其他的測試框架,來測試大型Web應用。 

行為驅動開發測試(BDD)測試 

最受歡迎的:Cucumber-JVM, Spock 

Cucumber最開始只是一個Ruby項目,但是現在已經用各大主流程式語言實現了。 Spock支援JVM驅動的語言Groovy,當然也支援Java。 Mockito能做的事情它基本上都能做。

資料 

RebelLabs Java Tools and Technologies Landscape Report 2014

DZone Guide to Continuous Delivery, 2015 edition (page 20)

.

記住,使用Git比僅僅使用Github和簡單提交那樣更加靈活。現在來看,Git贏得了版本控制大戰的勝利,許多Subversion和CVS的用戶逐漸開始轉向Git。 

資料 

RebelLabs Java Tools and Technologies Landscape Report 2016 (figure 1.18)

持續整合 

Jenkins靈活的插件系統,在過去的五年間逐漸控制了這個領域。其餘Jenkins的競爭對手中,有更多的人選擇No CI server。接下來是Bamboo。

資料 

RebelLabs Java Tools and Technologies Landscape Report 2016(figure 1.13)

DZone Guide to Continuous Delivery, 2015 editionsystem(page 20)20
資料庫 

最受歡迎的:OracleDB 

次流行的:MySQL 

在所有這些工具中,資料庫可謂是最取決於使用場景的。取決於你要創建的應用的不同,你可能需要一個輕量級的鍵值對存儲資料庫,或者存儲很多列的資料庫。對於大多數的應用程式來說,一般的資料庫就能滿足需求,這就是為什麼這兩種資料庫可以排名前列的原因。 

Oracle是這篇文章中少數的商業軟體,這意味著,它有許多「企業級」功能。如果你偏好開源軟體的話,強烈推薦MySQL和SQLite。

資料 

DB-Engines Database Rankings

資料 

DB-Engines Database Rankings
資料 

DB-Engines Database Rankings
資料 

DB-Engines Database Rankings

資料 

DB-Engines Database Rankings

DZone Guide to Databases 2016

RebelLabs Java Tools and Technologies Landscape Report 2016one(figure 1.14,

最受歡迎的:The Java Persistence API (JPA) / Hibernate 

次流行的:The Java Database Connectivity API (JDBC) 

Hibernate太流行了,多年前就在Java Persistence API成了標準。

數據 

DZone Guide to the Java Ecosystem, 2015 edition (paragraph 4)

RebelLabs Java Tools and Technologies Landscape Report 2014 (page 31)

靜態代碼分析 

最流行的:FindBugs 

次流行的: SonarQube 

這兩個工具非常不同,所以很難比較。 FindBug是一個簡單的靜態程式碼分析工具,SonarQube是一個全平台的程式碼品質分析、語法檢查、程式碼度量的工具。

資料 

DZone Guide to Continuous Delivery, 2015 edition (page 20)

RebelLabs Java Tools and Technologies Landscape Report 2014 (page 2)

RebelLabs Java Tools and Technologies Landscape Report 2014 (page 2)

clipse 

大型的Java IDE都有這個功能,但如果你需要特定的程式專門進行類型檢查,Check 是一個不錯的選擇。

資料 

DZone Guide to Continuous Delivery, 2015 edition(page 20)

人工倉庫管理 

最受歡迎的:Sonatype Nexus 

。 ,WARs,函式庫和應用。但是如果想這麼做的話,Nexus是最好的選擇。兩者都是商業軟體,Apache Archiva是一個開源的選擇。

資料 

RebelLabs Java Tools and Technologies Landscape Report 2014 (page 45)


控制反轉 

最流行的:Spring Framework DI 
的反轉很不錯,但是Google的開發者也做了一個不錯的工具。 Dagger在這方面的用戶並不很多,但是正在逐漸流行起來,尤其是安卓開發方面。 Pokémon Go使用的也是它。 

資料 

Poll of reddit.com/r/java

效能分析 

Java效能總覽 

最受歡迎的:VisualVM 

次流行的:No profiler 

有相當一部分的開發者並不使用效能分析工具(也許他們有專業的效能最佳化團隊來做)。 YourKit也是替代VisualVM的一個不錯選擇。

載入測試 

最受歡迎的:JMeter 

次流行的:LoadRunner 

除了這兩款工具之外,還有很多做載入性能測試的工具,所以在使用之前,最好做好充分的市場調查。 JMeter是開源軟體,LoadRunner是商業軟體。商業軟體的好處是服務廣泛,可以在雲端運行測試。

資料 

RebelLabs Java Tools and Technologies Landscape Report 2016 (figure 1.19)

DZone Guide to Continuous Deliaven, 2015 edition (page 20)

次流行的:Gradle 

Maven無疑佔據了領導地位,但是Gradle的使用也很廣泛,它還是安卓的標準編譯工具。


資料 

RebelLabs Java Tools and Technologies Landscape Report 2016 (figure 1.12)

DZone Guide to the Java Ecosystem, 2015 edition (chart 4)
DZone Guide to the Java Ecosystem, 2015 edition (chart 4)

尚不明確,這方面的調查比較少。這篇文章的內容場景圍繞著流行的日誌庫和Java中的設定。

以上就是盤點最流行的 Java 工具的內容,更多相關內容請關注PHP中文網(www.php.cn)!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
JVM如何促進Java的'寫作一次,在任何地方運行”(WORA)功能?JVM如何促進Java的'寫作一次,在任何地方運行”(WORA)功能?May 02, 2025 am 12:25 AM

JVM通過字節碼解釋、平台無關的API和動態類加載實現Java的WORA特性:1.字節碼被解釋為機器碼,確保跨平台運行;2.標準API抽像操作系統差異;3.類在運行時動態加載,保證一致性。

Java的較新版本如何解決平台特定問題?Java的較新版本如何解決平台特定問題?May 02, 2025 am 12:18 AM

Java的最新版本通過JVM優化、標準庫改進和第三方庫支持有效解決平台特定問題。 1)JVM優化,如Java11的ZGC提升了垃圾回收性能。 2)標準庫改進,如Java9的模塊系統減少平台相關問題。 3)第三方庫提供平台優化版本,如OpenCV。

說明JVM執行的字節碼驗證的過程。說明JVM執行的字節碼驗證的過程。May 02, 2025 am 12:18 AM

JVM的字節碼驗證過程包括四個關鍵步驟:1)檢查類文件格式是否符合規範,2)驗證字節碼指令的有效性和正確性,3)進行數據流分析確保類型安全,4)平衡驗證的徹底性與性能。通過這些步驟,JVM確保只有安全、正確的字節碼被執行,從而保護程序的完整性和安全性。

平台獨立性如何簡化Java應用程序的部署?平台獨立性如何簡化Java應用程序的部署?May 02, 2025 am 12:15 AM

Java'splatFormIndepentEncealLowsApplicationStorunonAnyOperatingsystemwithajvm.1)singleCodeBase:writeandeandcompileonceforallplatforms.2)easileupdates:updatebybytecodeforsimultanane deployment.3)testOnOneOnePlatForforurouniverSalpeforuluniverSalpehavior formafforulululyiversalivernave.444.44.444

Java的平台獨立性如何隨著時間的流逝而發展?Java的平台獨立性如何隨著時間的流逝而發展?May 02, 2025 am 12:12 AM

Java的平台獨立性通過JVM、JIT編譯、標準化、泛型、lambda表達式和ProjectPanama等技術不斷增強。自1990年代以來,Java從基本的JVM演進到高性能的現代JVM,確保了代碼在不同平台的一致性和高效性。

在Java應用程序中緩解平台特定問題的策略是什麼?在Java應用程序中緩解平台特定問題的策略是什麼?May 01, 2025 am 12:20 AM

Java如何緩解平台特定的問題? Java通過JVM和標準庫來實現平台無關性。 1)使用字節碼和JVM抽像操作系統差異;2)標準庫提供跨平台API,如Paths類處理文件路徑,Charset類處理字符編碼;3)實際項目中使用配置文件和多平台測試來優化和調試。

Java的平台獨立性與微服務體系結構之間有什麼關係?Java的平台獨立性與微服務體系結構之間有什麼關係?May 01, 2025 am 12:16 AM

java'splatformentenceenhancesenhancesmicroservicesharchitecture byferingDeploymentFlexible,一致性,可伸縮性和便攜性。 1)DeploymentFlexibilityAllowsibilityAllowsOllowsOllowSorlowsOllowsOllowsOllowSeStorunonAnyPlatformwithajvM.2)penterencyCrossServAccAcrossServAcrossServiCessImplifififiesDeevelopmentandeDe

GRAALVM與Java的平台獨立目標有何關係?GRAALVM與Java的平台獨立目標有何關係?May 01, 2025 am 12:14 AM

GraalVM通過三種方式增強了Java的平台獨立性:1.跨語言互操作,允許Java與其他語言無縫互操作;2.獨立的運行時環境,通過GraalVMNativeImage將Java程序編譯成本地可執行文件;3.性能優化,Graal編譯器生成高效的機器碼,提升Java程序的性能和一致性。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具