Aspectos básicos de Kotlin: Cuestionario sobre los componentes de la arquitectura

  1. Para evitar perder datos durante un cambio en la configuración del dispositivo, ¿en cuáles de estas opciones se almacenan los datos de apps?

  2. Un ViewModel nunca debe contener referencias a fragmentos, actividades o vistas. ¿Verdadero o falso?

  3. ¿Cuándo se destruye ViewModel?

  4. ¿Cómo se encapsula el LiveData almacenado en un ViewModel para que los objetos externos lean datos sin poder actualizarlos?

  5. ¿En cuál de los siguientes estados debe encontrarse el controlador de IU (como un fragmento) para que LiveData lo actualice?

  6. En el patrón del observador de LiveData, ¿cuál es el elemento observable (lo que se observa)?

  7. ¿Cuál de las siguientes afirmaciones NO es verdadera respecto de las vinculaciones de objetos de escucha?

  8. Supón que tu app incluye este recurso de string Hello %s. ¿Cuál de las siguientes opciones es la sintaxis correcta para aplicar formato a la string con la expresión de vinculación de datos?

    android:text= "@{@string/generic_name(user.name)}"
    android:text= "@{string/generic_name(user.name)}"
    android:text= "@{@generic_name(user.name)}"
    android:text= "@{@string/generic_name,user.name}"
  9. ¿Cuándo se evalúa y ejecuta una expresión que vincula un objeto de escucha?

  10. El método Transformations.map() proporciona una manera fácil de realizar manipulaciones de datos en LiveData y muestra ___.

  11. ¿Cuáles son los parámetros del método Transformations.map()?

  12. ¿En qué subproceso se ejecuta la función lambda pasada al método Transformations.map()?