AppCademy/Jetpack Compose: Curso definitivo desde 0 [2025]

  • 49,99 €

Jetpack Compose: Curso definitivo desde 0 [2025]

  • Curso online
  • 243 Lecciones

Olvídate de los XML, ha llegado JETPACK COMPOSE. Jetpack Compose es el nuevo kit de herramientas que GOOGLE nos provee para crear las vistas en Android de forma totalmente NATIVA es decir, en KOTLIN. A partir de ahora usarás Kotlin para la creación de las vistas, de una manera muy sencilla y potente. Y no solo eso, sino que trabajarás sobre el nuevo paradigma de programación necesario, la programación declarativa.

Contenido

Introducción a Compose [Actualización 2025 - Material 3]

Actualización 2025
JetpackCompose2025.zip
¿Qué es Jetpack Compose?
Creando nuestro primer proyecto
Arquitectura básica
Previews
Modificadores

Layouts en Compose [Actualización 2025 - Material 3]

Box
Column
Row
Combinando layouts
[Ejercicio 1] Filas, columnas y cajas
(SOLUCIÓN)[Ejercicio 1] Filas, columnas y cajas
Spacer
ConstraintLayout
[Ejercicio 2] Reto constraint
(SOLUCION) [Reto constraint]
ConstraintLayout Avanzado

Estados en Compose [Actualización 2025 - Material 3]

Estados y recomposición
Estados avanzados
State hoisting

Material VS Material 3 [Actualización 2025 - Material 3]

Material vs Material 3

Componentes Text y TextField [Actualización 2025 - Material 3]

Text
Textfield
Textfield avanzado
OutlinedTextfield

Componente Button [Actualización 2025 - Material 3]

Botones
OutlinedButton
TextButton
ElevatedButton
FilledTonalButton

Componente Image y Icon [Actualización 2025 - Material 3]

Image
Imágenes avanzadas
Imágenes desde URL
Iconos

Componente ProgressBar [Actualización 2025 - Material 3]

CircularProgressIndicator
LinearProgressIndicator
ProgressIndicator avanzado
Loading con animaciones de Lottie

Componentes de control de selección [Actualización 2025 - Material 3]

Switch
CheckBox
CheckBox Avanzado
TriState Checkbox
RadioButton
RadioButton avanzado

Componente Slider [Actualización 2025 - Material 3]

Slider basico
Slider avanzado
RangeSlider

Componente DropdownMenu [Actualización 2025 - Material 3]

DropDownMenuItem
DropDownMenu
ExposedDropDownMenuBox

Componentes para el Scaffold [Actualización 2025 - Material 3]

Scaffold
Appbar
Snackbar
FAB
NavigationBar
NavigationDrawer

Otros componentes [Actualización 2025 - Material 3]

Card
Badge
Divider

Diálogos [Actualización 2025 - Material 3]

AlertDialog
DatePicker
TimePicker
Diálogo personalizado

Comportamientos avanzados en Compose [Actualización 2025 - Material 3]

InteractionSource
LaunchEffect
DerivatedStatedOf

Listados (Antiguos Recyclerviews) [Actualización 2025 - Material 3]

Lazy Row/Column
Listas avanzadas
Gestionar el estado de las listas
LazyVertical/HorizontalGrid

Navegación [Actualización 2025 - Material 3]

Navegación básica
Navegación con parámetros primitivos
Navegación con parámetros complejos
Mejorando la navegación con Type genérico
Gestionando el stack de navegación
BackHandler

Animaciones [Actualización 2025 - Material 3]

Animar la visibilidad
Animate*AsState
Crossfade
AnimatedContent
AnimatedContentSize
InfiniteTranstition

MVVM con Jetpack Compose [Actualización 2025 - Material 3]

InstaDev.zip
Introducción a MVVM
Creando y configurando InstaDev
Preparando la navegación
LoginScreen
UiState y LoginViewModel

Theme [Actualización 2025 - Material 3]

Introducción a los themes
Colores
Fuentes
Shapes
Wrappeando componentes
Textos localizables

[EJERCICIO 3] Register Screen [Actualización 2025 - Material 3]

Explicación del reto
Diseñando RegisterScreen
RegisterViewModel
Preparando la navegación
Detalles de estilo

Clean Code - Data y dominio [Actualización 2025 - Material 3]

Introducción a clean architecture
Capa de dominio
Capa de data y mappers

Inyección de dependencias con Dagger Hilt [Actualización 2025 - Material 3]

Introducción a la inyección de dependencias
Añadiendo Dagger Hilt al proyecto
Preparando nuestro proyecto

Consumo de API con Retrofit [Actualización 2025 - Material 3]

Mockeando nuestros endpoints
Configurando e inyectando Retrofit
Parseando respuestas con kotlinx-serialization

Introducción a Compose

Aprender qué es Jetpack Compose

Qué es Jetpack Compose
JetpackComponentsCatalog
Creando nuestro primer proyecto
Arquitectura básica
Usando la preview en nuestras vistas
Vistas y modificadores en Compose

Layouts en Jetpack Compose

Aprenderás a organizar vistas en la pantalla como si de layouts de toda la vida se tratase

Box
Column
Row
Combinando layouts
[Ejercicio 1] Filas, columnas y cajas
Diseño a replicar
(SOLUCIÓN) [Ejercicio 1] Filas, columnas y cajas
Spacer
ConstraintLayout básico
[Ejercicio2] ConstraintLayout básico
(SOLUCIÓN) [Ejercicio 2] ConstraintLayout básico
ConstraintLayout avanzado

Estados en Compose

Qué son los estados
Recomposición
Trabajando con estados
RememberSaveable
Lifecycle
State property

Componentes Text y TextField

Conocer y trabajar con todos los componentes básicos que Compose nos provee

Text
TextField
TextField avanzado
OutlinedTextField

State hoisting

State hoisting

Componente Button

Botones
Botones con estados
OutlinedButton
TextButton

Componente Image

Image
Imágenes circulares
Icons

Componente ProgressBar

ProgressBar
ProgressBar avanzado

Componentes de control de selección

Switch
CheckBox
CheckBox con Texto
State hoisting con múltiples CheckBox
CheckBox TriState
RadioButton
State hoisting con múltiples RadioButton

Otros componentes

Card
Surface
BadgeBox
Divider
DropdownMenu

Componente Slider

Slider
SectionSlider

Diálogos en Jetpack Compose

AlertDialog
Diálogo personalizado
Diálogo personalizado avanzado
recursos+dialogo.zip
Diálogo de confirmación

Login básico - Instagram

Crear un login completamente funcional

Creando un Login desde cero - Introducción
recursos+login.zip
JetpackComposeInstagram.zip
Creando el header
Diseño del login - Parte 1
Diseño del login - Parte 2
Diseñando el footer
Personalizando TextFields (Con mostrar/ocultar password)
Personalizando botón del login

[RETO 1] - De tuits va la cosa

Explicación del reto
Iconos
Solución al reto
TwitterChallengeResolution.zip

RecyclerView en Jetpack Compose

Introducción a los RecyclerView
Recyclerview horizontal y vertical
SuperHeroImages.zip
Recomendaciones para los RV
Recyclerview GRID (Cuadrícula)
Controlar el desplazamiento
Cabeceras (Sticky Header)

Componentes en Jetpack Compose

Aprenderás qué componentes existen y como usar cada uno de ellos

Scaffold
TopAppBar
Snackbar
BottomBar
FloatingActionButton
ModalDrawer

Navegación en Compose

Navegación básica
Navegación like a pro
Navegar con argumentos obligatorios
Navegar con argumentos opcionales

Arquitectura MVVM con Jetpack Compose

Aprender a implementar la arquitectura MVVM con Jetpack Compose

¿Qué es MVVM?
JetpackComposeInstagram (1).zip
Implementando MVVM y live data - Parte 1
Implementando MVVM y live data - Parte 2
Introducción Clean Architecture

Arquitectura CLEAN - DATA y DOMAIN con consumo de API

Introducción
JetpackComposeInstagram+retrofit.zip
Montando RETROFIT
Data - Parte 1
Data - Parte 2
Dominio
Preparando el ViewModel

Inyección de dependencias con Dagger Hilt

Preparando Dagger Hilt
JetpackComposeInstagram+hilt.zip
Inyectando Activity y ViewModel
Inyectando data y domain

Animaciones con Jetpack Compose

Animar vistas con Jetpack Compose

Animación de color básica
Animación de color avanzada
Animación de tamaño básica
Animación de tamaño avanzada
Animación de visibilidad básica
Animación de visibilidad avanzada
Crossfade

[APP] Tareas

Introducción y creación del proyecto
TodoApp.zip
Implementando Dagger Hilt
Diálogo creador de tareas
Añadiendo y configurando el diálogo
Creando las tareas
Editando las tareas
Borrando las tareas
Implementando Room
Preparando el repositorio
Capa de dominio: Casos de uso
Flows - Preparando el StateFlow
Conectando StateFlow con Screen
Aprendiendo a solucionar errores
Actualizando los items (Room y UI)
Borrando items (Room y UI)

UI Testing

Introducción y preparación al testing de UI
compose-testing-cheatsheet.png
ComposeTesting.zip
Finders
Actions
Assertions
Creando nuestros primeros tests completos
Testeando diálogos