庫是開源生態(tài)系統(tǒng)的重要組成部分,開放源代碼的庫的背后通常站著一個偉大的社區(qū)。畢竟,一個沒有社區(qū)支持和發(fā)展的庫難以存在。以下這十大開源Java庫讓程序員不必在每次編寫代碼時都從頭開始,這些庫可以讓程序員盡可能多的重用代碼!使用這些庫可以節(jié)省時間,因為不必自己執(zhí)行每一行代碼。
作為老牌編程語言,Java有著許許多多的開源庫。為此,作者花了大量的時間進行研究并選擇了其中最好的、最有說明力的、最受支持和最新的十大開源庫,以盡可能節(jié)省程序員的時間。
1. Java standard libraries
沒錯,就是Java標準庫。很多人低估或不完全了解Java標準庫,并且不知道如何在編程時釋放其全部功能,或者根本不使用,以下是一些庫的簡要說明:
·java.lang總是被隱含導入,因為它包含基本無法編程的所有內(nèi)容,不需要String,Double,Enum,Math等。
·在java.util中,可以在Java中找到可用的所有集合和數(shù)據(jù)結構
·程序員可以使用java.io來讀取文件,使用管道,流和其他。
·java.nio實際上是java.io的替代品,代表了非阻塞I / O,它允許密集使用輸入/輸出操作。
·java.math提供使用任意精度十進制(BigDecimal)和整數(shù)(BigInteger)值的功能
·java.net正用于處理套接字,創(chuàng)建連接或簡短創(chuàng)建網(wǎng)絡應用程序
·在Java中,還有使用GUI的庫:javax.swing(舊java.awt的擴展名)
·甚至可以使用java.sound播放音樂并創(chuàng)建MIDI文件
2. JHipster
JHipster是一個用于生成,開發(fā)和部署Spring Boot + Angular Web應用程序和Spring微服務器的開發(fā)平臺。這絕對可以說是我個人的最愛,它基本可以從前端到后端生成整個應用程序,唯一需要添加的是架構背后的業(yè)務邏輯,生成項目中包含的主要和最重要的庫有:
·Spring Boot - 幫助加快和促進應用程序開發(fā)
·Angular/ AngularJS - JavaScript框架
3. Maven
Maven是一個軟件項目管理和理解工具,老實說,Maven是偉大的。如果你以前從未使用過Maven,你就錯過了一個創(chuàng)建企業(yè)應用程序的絕佳庫。Maven可以通過在單個pom.xml文件中指定它們來管理所有項目的依賴關系,配置和構建配置,甚至文檔。
4. Apache Commons
Apache Commons實際上是一個專注于創(chuàng)建Java庫的項目。
這是一些最好的和最常用的庫的簡短列表:
·Commons Math:Apache Commons Mathematics庫 - 這個名字就說明了一切:這個庫包含了允許高級數(shù)學和統(tǒng)計學操作和計算的組件。
·CommonsCLI - 提供用于解析命令行參數(shù)的API。為什么你會打擾創(chuàng)建應用程序,而無需傳遞參數(shù)并控制其行為?
·CommonsCSV - 無論你正在開發(fā)什么,在某些時候你將面臨使用csv文件的必要性。這包括打開,閱讀,編輯,保存和創(chuàng)建,我建議在保存/創(chuàng)建文件時使用CSVFormat類和UTF-8編碼中的RFC 4180格式。
·CommonsIO - 它被用于更容易執(zhí)行輸入/輸出操作,至少檢查ReversedLinesFileReader是絕對值得的。
5. Guava
Guava是Google的核心庫,它是一個用于擴展基本Java集合功能的庫。
這是一個不得不提的實用工具,你有沒有需要比較的內(nèi)容?高級排序和比較多個條件的多個列?我向您介紹這個庫中最喜歡的組件之一:
·ComparisonChain用于對集合進行高級復雜的比較排序。
6. google-gson
google-gson有助于將Java對象轉換為JSON,反之亦然。
該庫在開發(fā)移動應用程序和創(chuàng)建/使用REST API時特別有用,并且在任何情況下,程序員都需要將Java對象轉換為其JSON表示,反之亦然。
7. Hibernate-ORM
Hibernate-ORM是一個對象關系映射器,它用于在關系數(shù)據(jù)庫中持久存儲數(shù)據(jù)。它為開發(fā)人員提供了一種更簡單和更抽象的方法,它在其實現(xiàn)中使用JDBC。Hibernate也是JPA規(guī)范的實現(xiàn)。
8. Mockito
盡管不是特別優(yōu)秀,但Mockito可以讓使用更簡單,通過更干凈的代碼來創(chuàng)建模擬和寫入測試。
9. JUnit
JUnit是用于編寫單元測試的免費Java框架。它提供了對代碼進行可重復測試的功能,你只需要小心,不要過度迷戀數(shù)字(ps:代碼覆蓋率),更大的代碼覆蓋并不總是意味著更好和更少的代碼錯誤。
10. Log4j and Slf4j
這兩個都是日志框架,Slf4j代表其他日志記錄框架(如Log4j)的抽象,而Log4j只是一個簡單的日志框架。
你覺得這十大Java開源庫怎么樣呢?如果你有一些需要補充的歡迎留在評論區(qū),大家一起討論!