Declarar valores con val y var y aprovechar la inferencia de tipos de Kotlin.
Evitar excepciones de puntero nulo usando tipos anulables, operadores seguros y let.
Definir clases, clases de datos y objetos, y aplicar constructores con parámetros por defecto.
Transformar colecciones con map, filter, groupBy y las funciones de ámbito del estándar.
Escribir funciones de extensión y expresiones lambda con receptor.
Llamar a bibliotecas Java desde Kotlin y exponer código Kotlin a un proyecto Java existente.
Modelar jerarquías cerradas con clases selladas y recorrerlas con when exhaustivo.
Contenido del curso
8 módulos · 39 clases en vídeo · práctica guiada en cada módulo
Módulo 1 · Presentación y entorno4 clases
Qué es Kotlin y por qué convive con Java
Primera celda en JupyterLab con el kernel de Kotlin
val, var y expresiones
De la celda al proyecto compilado
Módulo 2 · Tipos y control de flujo5 clases
Tipos básicos e inferencia
Cadenas, plantillas y texto multilínea
if y when como expresiones
Bucles y rangos
Funciones, parámetros con nombre y valores por defecto
Módulo 3 · Nulabilidad5 clases
Tipos anulables en el sistema de tipos
Operadores de acceso seguro y de elvis
El operador de aserción y por qué evitarlo
Funciones let, run y takeIf
Interoperabilidad con nulos de Java
Módulo 4 · Clases y objetos5 clases
Clases, constructores primario y secundarios
Propiedades con getter y setter propios
Clases de datos y desestructuración
Objetos, companion object y singletons
Herencia, open y sobrescritura
Módulo 5 · Colecciones y funciones de orden superior5 clases
Listas, conjuntos y mapas mutables e inmutables
map, filter, fold y groupBy
Secuencias y evaluación perezosa
Lambdas, parámetro implícito y referencias a función
Funciones de ámbito: apply, also, with
Módulo 6 · Extensiones y tipos especiales5 clases
Funciones y propiedades de extensión
Clases selladas y when exhaustivo
Enumerados con propiedades
Clases en línea y de valor
Delegación de propiedades y lazy
Módulo 7 · Interoperabilidad con Java5 clases
Llamar a una biblioteca Java desde Kotlin
Anotaciones para exponer Kotlin a Java
Conversión de un fichero Java a Kotlin
Gradle en un proyecto mixto
Pruebas con JUnit desde Kotlin
Módulo 8 · Caso práctico: aplicación de consola con persistencia5 clases
Modelo de dominio con clases de datos y selladas
Lectura y escritura de ficheros
Validación sin comprobaciones de nulo dispersas
Pruebas del dominio
Entrega: proyecto Gradle ejecutable
Requisitos
Haber programado antes, preferiblemente en Java o en otro lenguaje orientado a objetos.
Basta con un navegador: se practica en JupyterLab con el kernel de Kotlin.
Para el bloque final conviene un JDK y un entorno como IntelliJ IDEA Community.
Descripción
Muchos equipos llegan a Kotlin desde un proyecto Java que arrastra años y comprobaciones de nulo repartidas por todo el código. Kotlin no pide reescribir nada: convive con Java en la misma base de código y traslada al sistema de tipos buena parte de lo que antes se vigilaba a mano, empezando por si un valor puede faltar o no.
El curso recorre el lenguaje desde la sintaxis básica hasta las construcciones que lo caracterizan: nulabilidad, clases de datos, clases selladas, funciones de extensión y funciones de ámbito. Se practica en cuaderno para probar cada idea sin esperar a compilar un proyecto y, en la parte final, se convierte un fragmento de código Java real a Kotlin, comparando ambos.
Al terminar se puede incorporar Kotlin a un proyecto Java existente o empezar uno nuevo con criterio. Es la base del curso de Kotlin para backend y multiplataforma, donde entran corrutinas y proyectos compartidos, y del desarrollo Android moderno, que asume este lenguaje como opción por defecto.
¿Para quién es este curso?
Desarrolladores Java que van a introducir Kotlin en un proyecto ya en marcha.
Alumnado de ciclos de desarrollo que se prepara para programación Android.
Programadores que buscan un lenguaje de la máquina virtual de Java con menos ceremonia.
Bajo demanda
Curso diseñado con la ficha cerrada. Se produce al confirmarse un grupo o un contrato.
Este sitio web utiliza cookies propias y de terceros para recopilar información con finalidad técnica. No se recaban ni ceden datos de carácter personal sin tu consentimiento. Más información en la política de cookies.