Soy bastante nuevo en la programación de Android/Java, por lo que algunas de las cosas básicas siguen siendo bastante confusas. Entonces, digamos que mi aplicación obtiene todos los datos (artículos) que requiere de archivos XML externos, los analiza en modelos de datos (clase de artículo) y esos artículos serán utilizados (mostrando en listas o un solo artículo) en toda la aplicación para todo ciclo vital.¿Dónde debo guardar/almacenar en caché los datos necesarios para todo el ciclo de vida de la aplicación?
¿Dónde debería guardarlos? ¿Puedo crear clases singleton con una matriz que contenga todos los artículos que he analizado? ¿O debería guardarlos en la base de datos y luego consultarlos a demanda? (Eso suena como demasiado trabajo, no necesito guardarlos en caché por ahora) ¿Cuál es la mejor práctica aquí?
¿No sería eso demasiado abarrotado de la clase principal? Especialmente, si conservo más datos (matrices) en él y métodos dedicados a administrar (agregar, cambiar, buscar) esos datos. – sniurkst
Esa es su decisión de diseño. Solo digo que la Aplicación es accesible desde todas las Actividades y es el lugar correcto para almacenar datos compartidos que están vinculados al ciclo de vida de la aplicación, no a un ciclo de vida de la actividad. –
Puede poner datos directamente en la aplicación o puede ponerlos en una clase especializada y tener una referencia dentro de la aplicación. –