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