极客视点
极客时间编辑部
极客时间编辑部
113245 人已学习
免费领取
课程目录
已完结/共 3766 讲
2020年09月 (90讲)
时长 05:33
2020年08月 (93讲)
2020年07月 (93讲)
时长 05:51
2020年06月 (90讲)
2020年05月 (93讲)
2020年04月 (90讲)
2020年03月 (92讲)
时长 04:14
2020年02月 (87讲)
2020年01月 (91讲)
时长 00:00
2019年12月 (93讲)
2019年11月 (89讲)
2019年10月 (92讲)
2019年09月 (90讲)
时长 00:00
2019年08月 (91讲)
2019年07月 (92讲)
时长 03:45
2019年06月 (90讲)
2019年05月 (99讲)
2019年04月 (114讲)
2019年03月 (122讲)
2019年02月 (102讲)
2019年01月 (104讲)
2018年12月 (98讲)
2018年11月 (105讲)
时长 01:23
2018年10月 (123讲)
时长 02:06
2018年09月 (119讲)
2018年08月 (123讲)
2018年07月 (124讲)
2018年06月 (119讲)
时长 02:11
2018年05月 (124讲)
时长 03:16
2018年04月 (120讲)
2018年03月 (124讲)
2018年02月 (112讲)
2018年01月 (124讲)
时长 02:30
时长 02:34
2017年12月 (124讲)
时长 03:09
2017年11月 (120讲)
2017年10月 (86讲)
时长 03:18
时长 03:31
时长 04:25
极客视点
15
15
1.0x
00:00/06:55
登录|注册

Java人应该知道的10大GitHub仓库

讲述:丁婵大小:9.50M时长:06:55
你好,欢迎收听极客视点。
Java 是业务应用程序开发中排名第一的编程语言,它也是顶级编程语言之一。Java 具有许多功能强大且丰富的仓库,尽管标准 Java 库功能强大,但是在专业软件开发领域,你还需要其他 Java 库。最近,公众号“开源最前线(ID:OpenSourceTop)”盘点了 10 个最受欢迎的 Java 仓库,供你参考。

1. Apache Commons

它就像 Java 软件开发中的瑞士刀一样,并且拓展了许多 Java Core 库,如果你想在项目中编写实用程序类,那么成熟且强大的 Apache Commons 库的可用性相对更好,它是由 43 个模块库组成,涵盖了集合、数学、类、数据库、缓存、I/O Utils 等领域。

2. Google Guava

这是另一个顶级的通用 Java 库。最初由谷歌开发,由著名软件工程师约书亚·布洛赫(Joshua Bloch)设计。它现在是一个开源项目,许多谷歌以外的工程师都为之贡献了力量,与 Apache Commons 一样,它也是模块化的,包含许多独立的库。
它涵盖了基本实用工具、集合、字符串操作、并发实用工具、图形库、散列等等。与 Apache Commons library 相比,Guava 具有更好的设计。如果你想要创建或使用程序类库,可以首选 Guava 库。

3. Jackson

在软件开发中,你必须处理各种格式化的数据,诸如你需要以不同的格式加载或保存数据,或者需要以不同的格式传输数据。JSON 是现代软件开发中事实上的数据交换格式,其他常见的数据格式是 Avro、 XML、 YAML、 Protobuf、 CSV、 BSON、 CBR。
Jackson 是一套用于 Java 的数据处理库,Jackson JSON 实际上是流 JSON 解析器 / 生成器库。它还支持其他数据格式以及数据类型。Jackson 是高度模块化的,具有提供基本功能的核心模块和各种扩展模块。

4. JAXB

XML 是另一种流行的数据格式,它提供了更严格的验证、存储和数据传输,在 Java 8 之前,Java 标准库都支持 XML,包括数据绑定。从 Java 9 开始,XML 处理功能不再是标准 Java 库的一部分,并转移到一个单独的库 JAXB 中。
JAXB 提供了在 Java 中使用 XML 所需的一切。它为 XML 和 Java 代码之间的映射提供了一种标准而有效的方法,它还包括基于注释的数据绑定。

5. SLF4J

它为各种 loging APIs 提供一个简单统一的接口,从而使得最终用户能够在部署的时候配置自己希望的 loging APIs 实现。Logging API 实现既可以选择直接实现 SLF4J 接的 loging APIs,如 NLOG4J、SimpleLogger,也可以通过 SLF4J 提供的 API 实现来开发相应的适配器,如 Log4jLoggerAdapter、JDK14LoggerAdapter。

6. Log4j 2

这是 Apache 开发的一款 Log4j 的升级产品,它提供了更好的性能。对于大型项目,日志库的性能是至关重要的,比如异步日志、峰值吞吐量和延迟。

7. Mockito

单元 / 集成测试是软件开发过程中不可分割的一部分。通常你希望测试单个类 (SUT),但它依赖于其他重量级类或外部功能 (如数据库操作、I/O 操作)。在这样的场景中编写单元 / 集成测试的一种方法是 mock。
Mockito 是 Java 中使用最广泛的模拟库,无论测试的是小型项目还是大型复杂的企业 Java 项目,都可以在任何地方使用 Mockito。它提供了一个非常简单、干净的 API,使你的单元 / 集成测试保持干净。

8. AssertJ

测试的主要功能之一是验证测试结果是否与预期结果相匹配。JUnit 在 org.junit.Assert 类中有内置的断言机制,它为测试验证提供了两个静态方法。对于专业开发人员来说,这两个方法是不够的。幸运的是,在 Java 领域中存在两个强大的库,AssertJ 就是其中一个。

9. Hibernate

作为一个软件工程师,不得不与数据存储打交道。目前,有许多类型的数据存储,如 SQL 和大量的 NoSQL 数据存储。处理数据存储的一种方法是使用低级 API(例如 JDBC 用于 SQL),但是这种处理方式还是有所弊端,因此,处理数据存储的最佳方法是在应用程序和数据存储之间引入一个抽象层。这个抽象层(ORM)将 Java 类映射为数据库表 / 集合。
Hibernate 是所有编程语言中最早的 ORM 库之一,它激发了业界许多类似的技术。虽然 Hibernate 主要以用于 SQL 数据库的 ORM 功能而被人所熟知,但它也扩展到了 NoSQL 数据库。Hibernate 也是模块化的,提供了一个核心模块和许多基于功能的模块。

10. Apache HTTPComponents

HTTP 是迄今为止最常用和流行的应用层协议。Java 标准库没有提供太多处理 HTTP 的功能。幸运的是,Apache HTTPComponents 提供了一个 Java 组件的工具集,该工具集中于 HTTP 和相关协议。Apache HTTPComponents 也是非常模块化的,并且占用空间小。
以上这十个 Java 仓库可以帮助你将工作做得更好。除此以外,在工作中注重细节,对问题追根溯源,从根儿上解决问题,更会让你避开很多坑。
所以,今天推荐你学习的课程是《Java 业务开发常见错误 100 例》,在这个课程中,每节课都是 Java 业务开发的一个核心关注点,每个知识点对应 2~5 个案例,并按照“知识介绍 ->还原业务场景 ->错误实现 ->正确实现 ->原理分析 ->小总结”来讲解每个案例,不仅帮你避开这个知识点的常见坑,更让你能知道产生坑的根本原因,提升自己的技术能力。
以下是课程目录,供你参考。记得使用极客视点专属口令,享受立减优惠。
优惠口令:Java100li
适用规则:立减 10 元(满 40 元可用)
有效期:9 月 30 日 - 10 月 7 日
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
免费领取
登录 后留言

全部留言(1)

  • 最新
  • 精选
  • 大叶枫
    666
    归属地:浙江
收起评论
大纲
固定大纲
1. Apache Commons
2. Google Guava
3. Jackson
4. JAXB
5. SLF4J
6. Log4j 2
7. Mockito
8. AssertJ
9. Hibernate
10. Apache HTTPComponents
显示
设置
留言
1
收藏
99+
沉浸
阅读
分享
手机端
快捷键
回顶部