使用Google Guava库进行Android开发是个好主意吗?
我参与了Android应用程序的开发,该应用程序是用于Web服务的相当“厚实”的移动客户端。它与服务器进行大量通信,但也具有许多内部逻辑。因此,我决定使用Google
Guava库的某些功能来简化开发过程。这是我非常感兴趣的功能列表:不可变集合,基本utils,集合扩展,函数式编程糖和习语(common.collect
和common.base
),基元实用程序(common.primitives
),哈希实用程序(common.hash
),并发实用程序(futures和AsyncFunction
)。我
在Android中使用的东西:(common.cache
请参见下面的问题),common.eventbus
(我们对此有更好的Android特定库,例如Otto),common.io
(我们可以使用okio
现在适用于Android)。
我读到,使用Guava for Android会大大减慢编译过程,并降低整个运行时性能: Android上的Guava
Cache的性能很差 (在这种情况下,这是合理的,不需要为Android使用Guava的缓存),并且 添加了Google番石榴到Android项目-大大减慢了构建速度
那么,是不是有效的在Android项目使用番石榴库或该库的设计使用 用于服务器端开发,我应该用标准的解决方案去?任何解释将不胜感激。
回答:
(太大了,无法发表评论,所以我发布了一个答案。)就我个人而言,我在每个Java项目中都使用整个Guava库,并且在我没有出现 严重且正确分析的
性能问题时。例如,如果确实有内存问题,例如在Android环境中,则可以使用ProGuard仅获取您真正需要的Guava的这些部分。
此外,有很多使用Guava的Android应用程序
-不仅是小型应用程序,例如Google Search和Youtube,它们直接来自Google。
(您还应该看到兼容性说明。)
以上是 使用Google Guava库进行Android开发是个好主意吗? 的全部内容, 来源链接: utcz.com/qa/432929.html