私人收藏:這十大java開(kāi)源庫(kù)深得人心!

責(zé)任編輯:editor007

作者:鈺瑩

2017-09-29 16:53:29

摘自:it168網(wǎng)站

庫(kù)是開(kāi)源生態(tài)系統(tǒng)的重要組成部分,開(kāi)放源代碼的庫(kù)的背后通常站著一個(gè)偉大的社區(qū)。我向您介紹這個(gè)庫(kù)中最喜歡的組件之一:  ·ComparisonChain用于對(duì)集合進(jìn)行高級(jí)復(fù)雜的比較排序。

庫(kù)是開(kāi)源生態(tài)系統(tǒng)的重要組成部分,開(kāi)放源代碼的庫(kù)的背后通常站著一個(gè)偉大的社區(qū)。畢竟,一個(gè)沒(méi)有社區(qū)支持和發(fā)展的庫(kù)難以存在。以下這十大開(kāi)源Java庫(kù)讓程序員不必在每次編寫(xiě)代碼時(shí)都從頭開(kāi)始,這些庫(kù)可以讓程序員盡可能多的重用代碼!使用這些庫(kù)可以節(jié)省時(shí)間,因?yàn)椴槐刈约簣?zhí)行每一行代碼。

私人收藏:這十大java開(kāi)源庫(kù)深得人心!

作為老牌編程語(yǔ)言,Java有著許許多多的開(kāi)源庫(kù)。為此,作者花了大量的時(shí)間進(jìn)行研究并選擇了其中最好的、最有說(shuō)明力的、最受支持和最新的十大開(kāi)源庫(kù),以盡可能節(jié)省程序員的時(shí)間。

1. Java standard libraries

沒(méi)錯(cuò),就是Java標(biāo)準(zhǔn)庫(kù)。很多人低估或不完全了解Java標(biāo)準(zhǔn)庫(kù),并且不知道如何在編程時(shí)釋放其全部功能,或者根本不使用,以下是一些庫(kù)的簡(jiǎn)要說(shuō)明:

·java.lang總是被隱含導(dǎo)入,因?yàn)樗緹o(wú)法編程的所有內(nèi)容,不需要String,Double,Enum,Math等。

·在java.util中,可以在Java中找到可用的所有集合和數(shù)據(jù)結(jié)構(gòu)

·程序員可以使用java.io來(lái)讀取文件,使用管道,流和其他。

·java.nio實(shí)際上是java.io的替代品,代表了非阻塞I / O,它允許密集使用輸入/輸出操作。

·java.math提供使用任意精度十進(jìn)制(BigDecimal)和整數(shù)(BigInteger)值的功能

·java.net正用于處理套接字,創(chuàng)建連接或簡(jiǎn)短創(chuàng)建網(wǎng)絡(luò)應(yīng)用程序

·在Java中,還有使用GUI的庫(kù):javax.swing(舊java.awt的擴(kuò)展名)

·甚至可以使用java.sound播放音樂(lè)并創(chuàng)建MIDI文件

2. JHipster

JHipster是一個(gè)用于生成,開(kāi)發(fā)和部署Spring Boot + Angular Web應(yīng)用程序和Spring微服務(wù)器的開(kāi)發(fā)平臺(tái)。這絕對(duì)可以說(shuō)是我個(gè)人的最愛(ài),它基本可以從前端到后端生成整個(gè)應(yīng)用程序,唯一需要添加的是架構(gòu)背后的業(yè)務(wù)邏輯,生成項(xiàng)目中包含的主要和最重要的庫(kù)有:

·Spring Boot - 幫助加快和促進(jìn)應(yīng)用程序開(kāi)發(fā)

·Angular/ AngularJS - JavaScript框架

3. Maven

Maven是一個(gè)軟件項(xiàng)目管理和理解工具,老實(shí)說(shuō),Maven是偉大的。如果你以前從未使用過(guò)Maven,你就錯(cuò)過(guò)了一個(gè)創(chuàng)建企業(yè)應(yīng)用程序的絕佳庫(kù)。Maven可以通過(guò)在單個(gè)pom.xml文件中指定它們來(lái)管理所有項(xiàng)目的依賴關(guān)系,配置和構(gòu)建配置,甚至文檔。

4. Apache Commons

Apache Commons實(shí)際上是一個(gè)專注于創(chuàng)建Java庫(kù)的項(xiàng)目。

這是一些最好的和最常用的庫(kù)的簡(jiǎn)短列表:

·Commons Math:Apache Commons Mathematics庫(kù) - 這個(gè)名字就說(shuō)明了一切:這個(gè)庫(kù)包含了允許高級(jí)數(shù)學(xué)和統(tǒng)計(jì)學(xué)操作和計(jì)算的組件。

·CommonsCLI - 提供用于解析命令行參數(shù)的API。為什么你會(huì)打擾創(chuàng)建應(yīng)用程序,而無(wú)需傳遞參數(shù)并控制其行為?

·CommonsCSV - 無(wú)論你正在開(kāi)發(fā)什么,在某些時(shí)候你將面臨使用csv文件的必要性。這包括打開(kāi),閱讀,編輯,保存和創(chuàng)建,我建議在保存/創(chuàng)建文件時(shí)使用CSVFormat類和UTF-8編碼中的RFC 4180格式。

·CommonsIO - 它被用于更容易執(zhí)行輸入/輸出操作,至少檢查ReversedLinesFileReader是絕對(duì)值得的。

5. Guava

Guava是Google的核心庫(kù),它是一個(gè)用于擴(kuò)展基本Java集合功能的庫(kù)。

這是一個(gè)不得不提的實(shí)用工具,你有沒(méi)有需要比較的內(nèi)容?高級(jí)排序和比較多個(gè)條件的多個(gè)列?我向您介紹這個(gè)庫(kù)中最喜歡的組件之一:

·ComparisonChain用于對(duì)集合進(jìn)行高級(jí)復(fù)雜的比較排序。

6. google-gson

google-gson有助于將Java對(duì)象轉(zhuǎn)換為JSON,反之亦然。

該庫(kù)在開(kāi)發(fā)移動(dòng)應(yīng)用程序和創(chuàng)建/使用REST API時(shí)特別有用,并且在任何情況下,程序員都需要將Java對(duì)象轉(zhuǎn)換為其JSON表示,反之亦然。

7. Hibernate-ORM

Hibernate-ORM是一個(gè)對(duì)象關(guān)系映射器,它用于在關(guān)系數(shù)據(jù)庫(kù)中持久存儲(chǔ)數(shù)據(jù)。它為開(kāi)發(fā)人員提供了一種更簡(jiǎn)單和更抽象的方法,它在其實(shí)現(xiàn)中使用JDBC。Hibernate也是JPA規(guī)范的實(shí)現(xiàn)。

8. Mockito

盡管不是特別優(yōu)秀,但Mockito可以讓使用更簡(jiǎn)單,通過(guò)更干凈的代碼來(lái)創(chuàng)建模擬和寫(xiě)入測(cè)試。

9. JUnit

JUnit是用于編寫(xiě)單元測(cè)試的免費(fèi)Java框架。它提供了對(duì)代碼進(jìn)行可重復(fù)測(cè)試的功能,你只需要小心,不要過(guò)度迷戀數(shù)字(ps:代碼覆蓋率),更大的代碼覆蓋并不總是意味著更好和更少的代碼錯(cuò)誤。

10. Log4j and Slf4j

這兩個(gè)都是日志框架,Slf4j代表其他日志記錄框架(如Log4j)的抽象,而Log4j只是一個(gè)簡(jiǎn)單的日志框架。

你覺(jué)得這十大Java開(kāi)源庫(kù)怎么樣呢?如果你有一些需要補(bǔ)充的歡迎留在評(píng)論區(qū),大家一起討論!

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號(hào)-6京公網(wǎng)安備 11010502049343號(hào)