Saya terlibat dalam pengembangan aplikasi Android yang merupakan klien seluler yang agak "tebal" untuk layanan Web. Ini sangat berkomunikasi dengan server tetapi juga memiliki banyak logika batin juga. Jadi, saya memutuskan untuk menggunakan beberapa fitur Google Guava
library untuk menyederhanakan proses pengembangan. Berikut adalah daftar fitur yang sangat saya minati: koleksi yang tidak dapat diubah, utilitas dasar, ekstensi koleksi, pemrograman fungsional gula dan idiom ( common.collect
dan common.base
), utilitas primitif ( common.primitives
), utilitas hashing ( common.hash
), utilitas bersamaan (masa depan dan AsyncFunction
). Hal- hal yang tidak ingin saya gunakan di Android: common.cache
(lihat pertanyaan di bawah), common.eventbus
(kami memiliki lib khusus Android yang lebih baik untuk ini, seperti Otto ), common.io
(kami dapat menggunakan okio untuk Android sekarang).
Saya membaca bahwa menggunakan Guava untuk Android dapat memperlambat proses kompilasi secara signifikan dan juga menurunkan kinerja runtime secara keseluruhan: Performa buruk dengan Guava Cache di Android (dalam hal ini masuk akal dan tidak perlu menggunakan cache Guava untuk Android) dan Menambahkan Google Proyek Guava ke Android - memperlambat proses build secara signifikan
Jadi, apakah efisien menggunakan pustaka Guava di proyek Android atau pustaka ini dirancang untuk digunakan hanya untuk pengembangan sisi server, dan saya harus menggunakan solusi standar? Penjelasan apa pun akan sangat dihargai.
Jawaban:
(Terlalu besar untuk berkomentar, jadi saya memposting jawaban.) Secara pribadi saya menggunakan seluruh perpustakaan Guava di setiap proyek Java dan ketika saya tidak memiliki masalah kinerja yang signifikan dan diprofilkan dengan benar . Jika Anda memiliki, misalnya, masalah memori seperti di lingkungan Android, Anda dapat menggunakan ProGuard untuk hanya mendapatkan bagian Jambu ini yang benar-benar Anda butuhkan.
Apalagi banyak aplikasi Android yang menggunakan Guava - tidak hanya yang kecil-kecil saja yaitu Google Search dan Youtube yang langsung dari Google.
(Anda juga harus melihat catatan kompatibilitas .)
sumber