- Descripción
- Currículum
🧑💻 Diseño de Interfaces en Android
Descripción del curso:
En este curso aprenderás a desarrollar aplicaciones Android modernas desde cero utilizando Jetpack Compose, el nuevo sistema declarativo de interfaces de usuario de Android. A lo largo del curso, construirás aplicaciones sólidas, escalables y testeables aplicando las mejores prácticas actuales de desarrollo móvil.
El curso se centra en una arquitectura profesional basada en MVVM (Model-View-ViewModel), combinada con el uso de Corrutinas y Flows de Kotlin para gestionar operaciones asincrónicas y reactivas. Utilizarás inyección de dependencias con Hilt, permitiendo que tu código sea más limpio, reutilizable y fácil de mantener.
📚 ¿Qué aprenderás?
-
Jetpack Compose:
- Creación de interfaces reactivas y modernas.
- Componentes personalizados.
- Gestión del estado con
remember
,mutableStateOf
,StateFlow
yLiveData
.
-
Arquitectura MVVM:
- Separación de responsabilidades.
- Comunicación entre capas usando Flows y ViewModel.
- Manejo de estados UI reactivos.
-
Corrutinas y Kotlin Flow:
- Llamadas asincrónicas eficientes.
- Uso de
suspend
,collect
,StateFlow
,sharedFlow
, etc.
-
Inyección de dependencias con Hilt:
- Configuración de módulos.
- Ciclos de vida y scopes.
- Inyección en ViewModels y repositorios.
-
Testing profesional:
- Pruebas unitarias con JUnit y Mockito.
- Pruebas instrumentales en Jetpack Compose (
compose-test
). - Buenas prácticas de testeo para asegurar calidad y mantenibilidad.
-
Persistencia de datos y consumo de APIs:
- Uso de Retrofit para consumo de APIs REST.
- Room para base de datos local.
-
Navegación moderna:
- Implementación con
Navigation-Compose
. - Pasaje de parámetros, navegación segura y control del back stack.
- Implementación con
-
Gestión de errores y estados vacíos:
- Representación de UI en diferentes estados (loading, error, éxito).
- Mecanismos de retry y feedback visual.
-
Buenas prácticas:
- Estructura de carpetas modular.
- Principios SOLID y Clean Architecture (básico).
- Revisión de código y patrones comunes.
🎯 Requisitos:
- Conocimientos básicos de Kotlin.
- Conocimientos previos de Android no son obligatorios, pero recomendados.
🧩 Proyecto final:
Al finalizar el curso desarrollarás una aplicación completa que integra todos los conocimientos adquiridos: arquitectura limpia, múltiples pantallas, manejo de red, base de datos local, y pruebas completas.
En este curso aprenderás este lenguaje y su aplicación en proyectos Android.
Relacionado
-
5Software a instalarText lesson
-
6Android Debug BridgeText lesson
-
7Nuestro primer proyectoText lesson
-
8Estructura de un proyectoText lesson
-
9Tipos de recursos en un proyectoText lesson
-
10Ficheros de configuración de gradleText lesson
-
11Añadir librerías a un proyectoText lesson
-
12Entorno Android StudioText lesson
-
13Vinculación de vistas: ViewBindingText lesson
-
14DataBindingText lesson
-
15Depurar en Android StudioDepurar en Android Studio
-
16Publicar código del proyectoText lesson
-
17Introducción a KotlinText lesson
-
18Crear proyecto Java y Kotlin en IntelliJ IDEAText lesson
-
19Uso y tipos de variablesText lesson
-
20ConversionesText lesson
-
21Cadenas o StringText lesson
-
22Estructura archivo KotlinText lesson
-
23ConstructoresText lesson
-
24Clases y propiedadesText lesson
-
25Modificadores de visibilidadText lesson
-
26Inicialización de propiedades: lateinit vs lazyText lesson
-
27Seguridad ante nullText lesson
-
28Fechas en Kotlin y JavaText lesson
-
29CodeLab: Usa clases y objetos en KotlinText lesson
-
35Herencia en KotlinText lesson
-
36InterfacesText lesson
-
37Clases AbstractasText lesson
-
38Clases EnumText lesson
-
39Data ClassText lesson
-
40Clases SelladasText lesson
-
41Objetos: Patrón Singleton y Objetos complementariosText lesson
-
42Los array en kotlinText lesson
-
43Listas en KotlinText lesson
-
44Mapas en KotlinMapas en Kotlin
-
45Funciones en KotlinText lesson
-
46Genéricos en KotlinText lesson
-
47Alcance de las funcionesText lesson
-
48Funciones de orden superiorText lesson
-
49Expresiones LambdaText lesson
-
50Funciones de extensiónText lesson
-
51Funciones de escape o modismosText lesson
-
52Funciones require, check y assertText lesson
-
53Declarar componentes JavaText lesson
-
54La importancia del contextoText lesson
-
55Todo sobre las actividadesLas Actividades
-
56Ciclo de vida de una actividadText lesson
-
57Guardar el estado de una actividadText lesson
-
58Obtener resultado de una actividadText lesson
-
59Comunicación componentes mediante Intent JavaText lesson
-
60Kotlin: serializar y parcelarText lesson
-
61Tareas y la pila de actividadesText lesson
-
62Fragmentos y su ciclo de vidaText lesson
-
63Tipos de fragmentosText lesson
-
64Componente NavigationText lesson
-
65Retener o salvar el estado de un FragmentText lesson
-
72Qué es Jetpack ComposeText lesson
-
73Estado y recomposiciónText lesson
-
74Renderizado de la interfazText lesson
-
75Hoist StateText lesson
-
76Estructura o uso de LayoutText lesson
-
77Modificadores de tamaño, posicionamiento y aparienciaText lesson
-
78Temas, colores, tipografíasText lesson
-
79CompositionLocalText lesson
-
80Componentes de una interfazText lesson
-
81Shape. Surface. IconText lesson
-
82CardsText lesson
-
83Lista desplazable Jetpack ComposeText lesson
-
84Elementos de ScaffoldText lesson
-
97Arquitectura de softwareText lesson
-
98Jetpack: Arquitectura de componentesText lesson
-
99Patrón MVVM en KotlinText lesson
-
100ViewModelText lesson
-
101LiveDataText lesson
-
102Transformaciones de LiveDataText lesson
-
103Binding AdapterText lesson
-
104Manejar estados de la UIText lesson
-
105Clase Result y erroresManejar errores
-
106Crear vistas en RoomText lesson
-
107CodeLab: Componentes de la ArquitecturaText lesson
-
113Tipos de pruebasText lesson
-
114Análisis de código estáticoText lesson
-
115Crear Vistas PreviewPerformance en Compose
-
116Pruebas UnitariasText lesson
-
117Prueba de coberturaText lesson
-
118Pruebas de interfaz de usuario o e instrumentaciónText lesson
-
119Pruebas de integraciónText lesson
-
120Pruebas Regresión con KatalonText lesson
