# Base de Datos: Room

# Objetivo

El alumno desarrolla aplicaciones que usan Realtime/Firestore (Firebase) como base de datos.

# Criterios de Evaluación

  • El alumno es capaz de justificar cuando usar o no usar una base de datos remota.
  • El alumno es capaz de añadir las dependencias de una base de datos Realtime/Firestore en un proyecto.
  • El alumno es capaz de crear una base de datos (Realtime/Firestore) de forma óptima usando el patrón Singleton.
  • El alumno es capaz de verificar los datos introducidos en Room a través de Firebase(web).
  • El alumno es capaz de usar funciones suspendidas con Realtime/Firestore para no bloquear el hilo principal.
  • El alumno es capaz de añadir información a Realtime/Firestore a través del sdk de Firebase para Android.
  • El alumno es capaz de eliminar información en Realtime/Firestore a través del sdk de Firebase para Android.
  • El alumno es capaz de guardar información en Realtime/Firestore a través del sdk de Firebase para Android.
  • El alumno es capaz de modificar información en Realtime/Firestore a través del sdk de Firebase para Android.
  • El alumno es capaz de realizar exportaciones e importaciones en Realtime/Firestore a través del sitio web.
  • El alumno es capaz de gestionar las dependencias con Firebase, Realtime/Firestore a través de un Inyector de Dependencias (Hilt).
  • El alumno es capaz de gestionar transacciones en Realtime/Firestore a través del sdk de Firebase para Android.
  • El alumno es capaz de mappear modelos de Dominio a modelos de Realtime/Firestore y viceversa.
  • El alumno es capaz de realizar filtros sobre Realtime/Firestore a través del sdk de Firebase para Android.