盤點最受歡迎的 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)
三個調查中的兩個都顯示Spring MVC的受歡迎度比JavaSF)高,DZone的調查顯示Spring MVC和JSF之間不分伯仲。隨著JavaScript框架在web方面的發展,也許這些都不再重要了。有一個調查顯示,AngularJS相比與純Java框架,在前端方面更受歡迎。
資料
RebelLabs Java Tools and Technologies Landscape Report 2016 (figure 1.16)
資料
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)
名符其實的最佳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
資料
DB-Engines Database Rankings
資料
DB-Engines Database Rankings
資料
DB-Engines Database Rankings
最受歡迎的: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
控制反轉
最流行的: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 工具的內容,更多相關內容請關注PHP中文網(www.php.cn)!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

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

熱門話題

在管理WordPress網站時,常常會遇到安裝、更新以及多站點轉換等複雜操作。這些操作不僅耗時,而且容易出錯,導致網站癱瘓。通過WP-CLI的core命令結合Composer,可以大大簡化這些任務,提高效率和可靠性。本文將介紹如何使用Composer來解決這些問題,並提升WordPress管理的便捷性。

PHPhassignificantlyimpactedwebdevelopmentandextendsbeyondit.1)ItpowersmajorplatformslikeWordPressandexcelsindatabaseinteractions.2)PHP'sadaptabilityallowsittoscaleforlargeapplicationsusingframeworkslikeLaravel.3)Beyondweb,PHPisusedincommand-linescrip

在開發過程中,我們常常需要對PHP代碼進行語法檢查(linting),以確保代碼的正確性和可維護性。然而,當項目規模較大時,單線程的語法檢查過程可能會變得非常緩慢。最近,我在項目中遇到了這個問題,嘗試了多種方法後,最終找到了overtrue/phplint這個庫,它通過並行處理大大提高了代碼檢查的速度。

在Laravel開發中,處理複雜的模型關係一直是個挑戰,特別是當涉及到多層級的BelongsToThrough關係時。最近,我在處理一個多級模型關係的項目中遇到了這個問題,傳統的HasManyThrough關係無法滿足需求,導致數據查詢變得複雜且低效。經過一番探索,我找到了staudenmeir/belongs-to-through這個庫,它通過Composer輕鬆安裝並解決了我的困擾。

在開發一個需要解析SQL語句的項目時,我遇到了一個棘手的問題:如何高效地解析MySQL的SQL語句,並提取其中的關鍵信息。嘗試了多種方法後,我發現greenlion/php-sql-parser這個庫能夠完美解決我的需求。

在開發網站的過程中,提升頁面加載速度一直是我的首要任務之一。曾經,我嘗試使用Minify庫來壓縮和合併CSS及JavaScript文件,以期提升網站的性能。然而,使用過程中遇到了不少問題和挑戰,最終讓我意識到Minify可能不再是最佳選擇。下面我將分享我的使用經驗,以及如何通過Composer安裝和使用Minify的過程。

在開發一個前端項目時,我遇到了一個棘手的問題:需要手動為CSS屬性添加瀏覽器前綴以確保兼容性。這不僅耗時,而且容易出錯。經過一番探索,我發現了padaliyajay/php-autoprefixer庫,它通過Composer輕鬆解決了我的困擾。

在處理PHP項目時,我遇到了一個嚴重的問題:phar://流處理存在安全漏洞,這可能導致惡意代碼的執行。經過一番研究和嘗試,我發現了一個有效的解決方案——使用typo3/phar-stream-wrapper庫。該庫不僅解決了我的安全問題,還提供了靈活的攔截器機制,使得管理phar文件變得更加安全和可控。
