Java培训:忘记Guava,Java开发人员应该知道的5个谷歌库
很多程序员知道一个流行的谷歌Java库——Guava,这并不奇怪,因为它的主要关注点是提高开发人员的生产力。但其他谷歌库呢?你有注意过吗?在下面的文章中,我们将浏览谷歌的一些有趣的Java库,并让你了解如何使用它们。想学习java的同学可以参加java培训,在专业老师的带领下,可以获得快速提升。
1.依赖项注入—Guice
Guice是Java的一个轻量级依赖注入(DI)框架,其作用与Spring的核心控制反转(IOC)库类似。如果你不熟悉它,Guice可以减少对工厂的需求,并简化代码中“new”的使用。用谷歌自己的话来说,Guice@Inject是新的。
虽然这个库不会免除你编写工厂的责任,但它将有助于确保你的代码不直接依赖于它们。这样,更改、单元测试和重用代码将更容易。
这个库旨在使开发和调试更容易、更快。文档甚至声称可以帮助你更好地理解代码。Guice提供的另一个很酷的功能是在出现错误时生成有用的消息,这样你就可以了解发生了什么以及如何解决它。
2.静态分析—ErrorProne
这个开源库是Java的静态分析工具,允许你在编译时发现常见的编程错误。例如,它可以检测到的错误模式之一是CannotMockFinalClass,这表明Mockito不能模拟最终类。在java培训中,有更加系统全面的课程,明确清晰的学习路线,学习起来既轻松,又高效。
在官方库页面上,你会发现常见错误列表及其建议的修复方法。这意味着每个错误都有一个别人已经想到的解决方案,并且你可以在自己的代码中轻松实现它。
3.有意义的错误—Truth
Truth是一个测试框架,旨在帮助你的测试和错误消息更具可读性和可发现性。它生成有意义的错误消息,报告测试失败的原因,同时可扩展到新类型的对象。你可以使用Truth来代替JUnit的断言、FEST或Hamcrest的matchers类,也可以简单地以你认为适合你的代码的方式使用它。它为你提供了一个测试动词,该动词断言被测试的主语、值或宾语。你可以使用Truth来声明JUnit风格的假设(并跳过失败测试)、断言和异常。
4.语言不可知论协议——Kythe
Kythe提供并支持工具和标准,以鼓励操作源代码的程序之间的互操作性(系统之间共享、交换和使用信息)。解释它的一个更简单的方法是说,这个库为构建与源代码一起工作的工具提供了一个生态系统。想学习java更多技能,建议参加java培训,课程实时更新,紧跟市场和企业,让你学到最新的java技能,提高市场竞争力。
这个库的主要目标是提供一个标准的、与语言无关的交换机制,该机制可以用于任何源代码。它包括构建系统、编译器、解释器、静态分析、编辑器、代码评审应用程序等等。这样,你就可以与你想要的任何其他系统共享信息。
5.序列化结构化数据-Protobuf
Protobuf,也被称为ProtocolBuffers的库,是谷歌的语言中立、平台中立、可扩展的机制,用于序列化结构化数据。如果你不确定它的意思,谷歌解释说,它就像XML一样,只是更小、更快、更简单。如果我们必须为这个库选择一个口号,它可能是“一次构造,随处使用”,这是描述它的最佳方式。一旦你定义了你想要的数据结构,你就可以使用特殊生成的源代码从各种数据流中读写,并使用各种语言。
最后的想法
有很多Java库可以帮助你的代码,让它更智能,更容易使用。你所要做的就是了解你在找什么,看看某个库能帮上什么忙。对Java感兴趣的同学,可以参加Java培训来获得知识和技能,以便快速上岗。