MAUI Lab C# / .NET

02 / ENTENDER

Si lo entiendes,
puedes explicarlo.

Escribe sin mirar. Después contrasta y corrige. Estas respuestas se autoevalúan: no se califican automáticamente.

Bases móviles y MVVM

Explica por qué separarías View y ViewModel y qué ocurre si el sistema elimina el proceso.

Ver solución y respuesta modelo

Ejemplo de aplicación

En un formulario de saludo, Entry edita Nombre mediante TwoWay; SaludarCommand cambia Saludo y un Label recibe el cambio mediante OneWay. Para una nota, GuardarCommand llama a un repositorio y confirma el guardado antes de mostrar éxito.

Comprueba tu explicación

  • Separé presentación, estado y acciones.
  • Expliqué el papel de BindingContext y la notificación.
  • Distinguí memoria de persistencia sin depender solo del cierre.

Es una respuesta posible: puedes expresarla de otra forma si mantienes el razonamiento correcto.

Volver al módulo

Pantallas, navegación y datos

Dibuja el recorrido de una nota: lista, detalle, edición y base de datos.

Ver solución y respuesta modelo

Ejemplo de aplicación

Recorrido: lista → seleccionar nota #7 → detalle recibe ID7 → repositorio lee SQLite → editar Texto → guardar con await → refrescar la lista. Antes de consultar, espero la inicialización de la tabla; para editar una nota existente, actualizo su registro en vez de insertar otra copia.

Comprueba tu explicación

  • Expliqué el recorrido desde la lista hasta la base.
  • Distinguí notificación de colección y de elemento.
  • Incluí validación de ID, inicialización esperada y recuperación al iniciar.

Es una respuesta posible: puedes expresarla de otra forma si mantienes el razonamiento correcto.

Volver al módulo

Capacidades y permisos

¿Qué debería ver el usuario si niega cámara o no existe ubicación disponible?

Ver solución y respuesta modelo

Ejemplo de aplicación

Al tocar Adjuntar foto: comprobar soporte → gestionar permiso → capturar → comprobar si hay archivo → copiar al almacenamiento privado. Si el usuario cancela, conservo el formulario. Si GPS no devuelve Location, guardo la nota sin coordenadas y muestro “Sin ubicación disponible”.

Comprueba tu explicación

  • Diferencié disponibilidad, permiso y cancelación.
  • Ofrecí alternativas sin forzar al usuario.
  • Mencioné null, errores y configuración específica de plataforma.

Es una respuesta posible: puedes expresarla de otra forma si mantienes el razonamiento correcto.

Volver al módulo

Conceptos de NotasApp

Explica cómo una nota viaja como JSON y cómo vuelve al almacenamiento local.

Ver solución y respuesta modelo

Ejemplo de aplicación

Creo una nota local con un ID y Pendiente=true. El servicio envía un DTO mediante POST. Si el servidor confirma, guardo el ID remoto y limpio Pendiente. Si falla o hay timeout, conservo los datos y planifico un reintento idempotente. Al descargar notas, actualizo por ID según la política elegida, no comparando únicamente el texto.

Comprueba tu explicación

  • Distinguí modelo local, DTO y JSON.
  • Expliqué await sin afirmar que crea automáticamente otro hilo.
  • Incluí errores, confirmación, IDs y consistencia al sincronizar.

Es una respuesta posible: puedes expresarla de otra forma si mantienes el razonamiento correcto.

Volver al módulo