gpt4 book ai didi

java - 使用 com.google.common.hash 中的 Hashing 类安全吗?

转载 作者:行者123 更新时间:2023-11-29 08:26:02 25 4
gpt4 key购买 nike

我偶然发现了 com.google.common.hash 包中的 Hashing 类。如果我正在使用该类的函数,Intellij IDEA 会显示以下警告:

类本身使用@Beta注解进行注解:

@Beta注解的描述是这样的:

Signifies that a public API (public class, method or field) is subject to incompatible changes, or even removal, in a future release. An API bearing this annotation is exempt from any compatibility guarantees made by its containing library. Note that the presence of this annotation implies nothing about the quality or performance of the API ...

  • 那么 API 的实现是否良好且稳定?

... in question, only the fact that it is not "API-frozen." It is generally safe for applications to depend on beta APIs, at the cost of some extra work ...

  • 哪种额外工作?

... during upgrades. However it is generally inadvisable for libraries (which get included on users' CLASSPATHs, outside the library developers' control) to do so.

问题是使用提到的类及其功能是否安全/稳定?使用 Beta API 的权衡是什么?

最佳答案

API 的实现很好,您可以信赖它,因为它是来自 google 的广泛使用的库。

至于稳定性 - 您可以在这里做一些研究,并比较此 API 相隔一年的几个版本。比方说,23.0 与 27.0-jre

https://google.github.io/guava/releases/23.0/api/docs/com/google/common/hash/Hashing.html

https://google.github.io/guava/releases/27.0-jre/api/docs/com/google/common/hash/Hashing.html

如果您进行比较,不同年份(2017 年与 2018 年)的 API 完全相同。

因此,我会将此处的 @Beta 解释为“请注意,此 API 可能 将来会更改”的提示,但实际上 API 是既稳定、可靠又被大量使用。

也许在某些时候,谷歌开发人员可能会选择删除 @Beta 注释。或者他们可能打算或已经忘记(推测...)

所谓的“额外工作”是指,如果您使用此 API 构建应用程序,您可能需要稍微重构您的应用程序(假设方法签名发生变化,或者方法被弃用和替换),如果您需要升级到此 API 的最新版本。

那里的工作程度取决于您使用 API 的程度和频率,以及对该 API 的依赖程度有多深(例如,通过其他库传递 - 这些也需要重建)。

总而言之,在这种情况下 - “别担心,继续前进”:)

关于java - 使用 com.google.common.hash 中的 Hashing 类安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53060907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com