Полезно ли использовать библиотеку Google Guava для разработки Android?
Я участвую в разработке приложения для Android, которое является довольно "толстым" мобильным клиентом для веб-сервиса. Он сильно общается с сервером, но также имеет много внутренней логики. Поэтому я решил использовать некоторые функции библиотеки Google Guava
для упрощения процесса разработки. Вот список возможностей, которые мне очень интересны: неизменяемые коллекции, базовые утилиты, расширения для коллекции, саун и функциональность программирования (common.collect
и common.base
), утилиты примитивов (common.primitives
), утилиты хэширования (common.hash
), параллельные utils (фьючерсы и AsyncFunction
). Вещи, которые я не хочу использовать в Android: common.cache
(см. Вопрос ниже), common.eventbus
(для этого у нас лучшие Android файлы для Android, такие как Otto), common.io
(теперь мы можем использовать okio для Android).
Я читал, что использование Guava для Android может значительно замедлить процесс компиляции, а также снизить всю производительность во время выполнения:
Плохая производительность с Guava Cache на Android (в этом случае это разумно, и нет необходимости использовать кэш Guava для Android) и
Добавление проекта Google Guava в Android - значительно замедляет сборку
Итак, эффективно ли использовать библиотеку Guava в проекте Android, или эта библиотека предназначена для использования только для серверной разработки, и я должен идти со стандартными решениями? Любые объяснения будут очень оценены.
Ответы
Ответ 1
(Слишком большой для комментариев, поэтому я отправляю ответ.) Лично я использую всю библиотеку Guava в каждом проекте Java и когда у меня нет существенных и должным образом профилированных проблем с производительностью. Если у вас есть, например, проблемы с памятью, например, в среде Android, вы можете использовать ProGuard, чтобы получить только эти части Гуавы необходимо.
Кроме того, существует множество приложений для Android с использованием Guava - не только небольшие, то есть Google Search и Youtube, которые поступают напрямую из Google.
(Вы также должны увидеть примечание о совместимости.)