代码库是开源生态系统的重要组成部分,一个开源库背后通常拥有一个优秀的开源社区,毕竟没有社区的努力和支持,这个开源库很难生存下去。

400132377_wx.jpg

  有了开源库,我们不需要每次编码都重复造轮子,这样你可以节省很多时间去做其他事情,比如陪伴家人和朋友。所以,在数十万的库中寻找一个最好的,最受欢迎的,而且用起来最简单高效的就显得尤为重要

  下面,我将推荐给你们10个最高效的Java库,并且他们都是开源的

  1. Java 标准库

  不用怀疑,我说的就是Java标准库,很多人都低估了或者没有完全了解Java标准库,并且不知道如何在编程的时候使用它,有些人甚至都不用它,下面说一些Java标准库的简要说明

  ● java.lang:总是默认被导入,因为它基本包含开发中需要的Java 类型:String,Double,Enum,Math,等

  ● java.util:包含Java中可用的所有集合和数据结构

  ● java.io:I/O流

  ● java.nio:它实际上是java.io的替代品,代表非阻塞I / O。

  ● java.math:提供了使用任意精度decimal(BigDecimal)和integer(BigInteger)值的功能

  ● java.net:被用于处理套接字,创建连接,或者创建网络应用程序

  在Java中,我们也会用到GUI库,我们甚至可以用java.sound播放音乐和创建MIDI文件

  2. JHipster

  JHipster是一个开发平台,用来开发和部署 Maven + Spring + AngularJS 的项目,提供完全热加载的 Java 和 JavaScript 代码。从前端到后端生成整个应用程序,你唯一需要添加的是架构背后的业务逻辑。最后生成的项目中包含两个最重要的库:

  Spring Boot - 帮助您加速和促进应用程序开发

  Angular / AngularJS - JavaScript框架

  3. Maven

  Maven 是一个 Java 项目构建系统。老实说,Maven真的很好用,如果你以前从未使用过Maven,那真是太可惜了。Maven可以通过在一个pom.xml文件中指定它们来管理所有项目依赖项的jar包,配置和构建配置,甚至可以管理文档。

  4. Apache Commons

  Apache Commons实际上是一个专注于创建Java库的整个项目。以下是该库中最好和最常用的类库:

  ● Commons Math:顾名思义,该库包含许多数学和统计组件

  ● Commons CLI:提供用于解析命令行参数的API。

  ● Commons CSV : 用于读写CSV文件的工具包,由两大核心对象组成 CSVParser(解析),CSVPrinter(写csv)。、

  ● Commons IO:它用于更容易执行输入/输出操作,是针对开发IO流功能的工具类库

  5. Guava

  Guava是Google的Java核心库。包含许多 Google 核心的 Java 常用库,这个库超级实用,里面我最喜欢的组件之一的就是:ComparisonChain用于为集合实现高级和复杂的比较排序。

  6. google-gson

  gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。此库在开发移动应用程序和创建/使用REST API时非常有用。

  7. Hibernate-ORM

  Hibernate是一种Java语言下的对象关系映射解决方案。它用于在关系数据库中保存数据,对JDBC进行了非常轻量级的对象封装,Hibernate也是JPA规范的一个实现。

  8. Mockito

  

微信图片_20180523190631.jpg


  Mockito不是无酒精混合饮料,而是一个针对Java的mocking框架,Mockito使你可以使用更简单,更简洁的代码创建模拟和编写测试。总而言之,Mockito可以极大地简化单元测试的书写过程

  9. JUnit

  

微信图片_20180523190644.jpg


  JUnit是一个Java语言的单元测试框架, JUnit有它自己的JUnit扩展生态圈,不过,不能单纯拿代码覆盖率来评估测试的好坏,有时候覆盖率越大并不代表你的软件质量越好。

  10. Log4j 和 Slf4j

  这两个都是日志框架。Slf4j为各种loging APIs提供一个简单统一的接口。Log4j只是一个简单的日志框架,控制日志的生成过程。

  开源最前线(ID:OpenSourceTop) 猿妹整编

  链接:https://jaxenter.com/top-10-java-libraries-137587.html