aprende cómo desarrollar aplicaciones android con kotlin

Desarrollar aplicaciones Android con Kotlin es una de las mejores opciones si quieres empezar desde cero en este sector. Kotlin es un lenguaje de programación que corre sobre la máquina virtual de Java pero que también puede ser compilado a código fuente JavaScript. Hace unas semanas celebramos un webinar con José Antonio Blanes y Ángel Hernández, especialistas en movilidad en la empresa Deloitte, quienes nos han hablado de todo en torno a la arquitectura Android-Klotin.

Componentes de arquitectura

Los principales conceptos y relaciones que encontrarás en el desarrollo de aplicaciones Android con Kotlin son:

  • ViewModel: almacena y gestiona la lógica de vista, de manera optimizada. Permite que los datos sobrevivan a cambios de configuración que el sistema realiza sobre las vistas. Se comunica con la vista mediante propiedades de tipo LiveData de forma que la refrescan en los cambios de estado.
  • Fragment: es la unidad mínima y recomendada de vista, aunque siempre debe estar alojado en una ​Activity​. Google promueve cada vez más aplicaciones ​SingleActivity​. Debe ser​ statless​, para almacenar el estado y toda la lógica tenemos el ViewModel. Se encarga de escuchar a las propiedades de LiveData que expone el ViewModel y reacciona en consecuencia según cambien. Su ciclo de vida está afectado por el de su “padre”, pero es independiente.
  • LiveData: es un contenedor de datos observable, optimizado para los ciclos de vida de los componentes de vista.
    Lanza eventos solo en los cambios de estado a sus observadores. Solo actualiza observadores de componentes con ciclo de vida activo. Es la tecnología recomendada para la interconexión del Fragment con su ViewModel. Aumento del número de operadores al estilo RX.

En cuanto a las relaciones entre estos elementos, el Fragment invoca al ViewModel, pidiendo los datos que se necesitan y este último se encarga de conseguirlos. Como estamos suscritos al LiveData, nos va a llegar el evento.

Por otro lado se encuentra la librería de navegación. Navigation es un ​framework para navegar entre “destinos” dentro de una aplicación para Android que proporciona una API coherente, independiente del tipo de destino. Fomenta la separación de responsabilidades, entre la vista y el destino. Se organiza mediante gráficos donde se definen las vistas y sus navegaciones mediante la definición de acciones.

Los posibles destinos que soporta la librería, por defecto, son: ​activity, fragment, dialog fragmen​t y gráficos. Aunque siempre es posible definir tu propio tipo de destino o sobrescribir uno existente usando su ​custom Navigator​.

Componentes de visualización de Aplicaciones Android con Kotlin

Respecto a los componentes de visualización enfocados en el desarrollo de aplicaciones Android con Kotlin, encontramos:

  • View Binding: es una función que genera una clase de vinculación para cada archivo de diseño XML presente en el módulo. Contiene todas las vistas que tiene un ID, incluyendo ​includes​. Además, incluye un ​getter root para acceder al contenedor raíz de la pantalla.
  • Jetpack Compose: es un kit de herramientas para crear IU nativas de Android con funciones declarativas. Se usan las funciones de Jetpack Compose para decir qué elementos visuales se desea añadir.

Si quieres ver cómo estos conceptos se aplican al código, aquí te dejamos el webinar para que practiques todo lo aprendido

Si quieres dominar Kotlin, desarrollar aplicaciones tanto para Android como para iOS y convertirte en un experto en desarrollo mobile, descubre nuestro Full Stack Mobile Bootcamp, con el cual en seis meses dominarás todo el ecosistema de desarrollo de apps. Descarga aquí el temario del Bootcamp.

Otras entradas que te pueden interesar:

¡Conoce nuestros Bootcamps!

Descarga el temario y descubre cómo en 6 meses podrás ser un Full Stack DevOps Bootcamp.

¿Quieres más información?