Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Guice Performance en Android

Como desarrollador de Java, me he acostumbrado a tener la inyección de dependencia disponible en las aplicaciones. Para Android sin embargo, soy especialmente cauteloso de rendimiento. ¿Cuáles son las implicaciones de rendimiento para usar Guice en una aplicación para Android? Supongo que hay algunas sobrecarga, pero es lo suficientemente importante que debería evitar el uso de Guice?

Mi uso de lo que probablemente sería sólo para inyectar unos pocos objetos compartidos en diversas actividades.

4 Solutions collect form web for “Guice Performance en Android”

A partir de la versión 3, Guice almacena objetos reflexivos para mejorar el rendimiento. Hay al menos un error contra dalvik para realizar búsquedas de anotación más rápido, pero el rendimiento actual es factible.

Me gustaría evitar el uso de DI en Android como sugiere google: http://developer.android.com/training/articles/memory.html#DependencyInjection

Dagger resuelve algunos problemas de tiempo, pero sigue desperdiciando la memoria para ningún beneficio real.

Roboguice (y Guice) pueden degradar significativamente el tiempo de inicio de la aplicación. Mi aplicación de tamaño moderado y aún no completo tardó casi 15 segundos en comenzar con un HTC EVO 4g.

Echa un vistazo a Dagger como una alternativa que no debe proporcionar prácticamente ninguna sobrecarga de inicio.

Definitivamente debe utilizar Dagger 2 para proyectos de Android si le interesa el rendimiento.

Dagger 2 no utiliza la reflexión para escanear el código de la aplicación. La implementación estática y compacta de Dagger significa que se puede usar en aplicaciones Android sin necesidad de tiempo de ejecución o uso de memoria.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.