Tiene razón, la mayoría de las aplicaciones grandes usarán una base de datos Sqlite o almacenarán archivos en el almacenamiento local (a veces son JSON serializados, pero no siempre). Antes de llegar, la decisión clave que debe tomar es: ¿ cuál es la copia maestra de los datos (dispositivo o nube)?
Si decide que el dispositivo es la copia maestra , entonces la nube es simplemente una copia de seguridad de esos datos. Estas aplicaciones tenderán hacia Sqlite ya que proporciona la mayor flexibilidad. En este caso, (con cierta frecuencia) cargará copias de los objetos / datos almacenados en la base de datos local a un servicio en la nube. Si hay un cambio en los datos del dispositivo que no está en la nube, la nube se actualizará con los datos del dispositivo, que se supone que es la autoridad.
Si decide que la nube es la copia maestra , puede ser oneroso duplicar el mismo modelo de datos relacionales tanto en el teléfono como en el servidor para que usen archivos locales para almacenar en caché los datos descargados de la nube. En estos modelos, se supone que todos los datos se envían y cargan desde la nube primero y la copia local solo se usa para mejorar el rendimiento. Aquí, un simple archivo serializado u objeto en memoria es suficiente. En este caso, si hay una diferencia en los datos entre el dispositivo y la nube, los datos del dispositivo se actualizarán.
- Aprender a programar: ¿Qué tan fácil / difícil es para un médico de 38 años aprender el desarrollo de software / aplicaciones desde cero?
- ¿Cómo aprendemos back-end para el desarrollo de Android?
- Cómo entender la tecnología, en este caso Android
- ¿Cuál es la mejor plataforma para usar para el desarrollo de aplicaciones de Android?
- ¿Cuáles son las mejores empresas de desarrollo de aplicaciones de Android específicamente?
Tenga en cuenta que si bien es posible tratar el teléfono y la nube como pares y no tener una sola copia “maestra”, esto dará como resultado un esquema de sincronización muy complejo. La complejidad aquí es alta, por lo que generalmente se usa uno de los anteriores.
Espero que eso ayude.