Kotlin SELF
¿Quieres el lenguaje del futuro? Kotlin es la elección oficial de Google para Android y lo usan Netflix, Uber y Trello. 62 niveles de práctica: corrutinas, null-safety y programación funcional. Más de 1000 tareas — ¡un récord entre todos los cursos de Kotlin! Verificación instantánea con un validador de IA. ¡Conviértete en un gran desarrollador Kotlin!
- Nivel 1
Bloqueado Comandos y primer programa en Kotlin - Nivel 2
Bloqueado Enteros, Strings y entrada: readln() - Nivel 3
Bloqueado Sentencias condicionales y lógica - Nivel 4
Bloqueado Bucles para el control de flujo - Nivel 5
Bloqueado Instalación del IDE y configuración de un proyecto Kotlin - Nivel 6
Bloqueado Números de punto flotante y sus características - Nivel 7
Bloqueado Arrays en Kotlin + Ranges y Progressions - Nivel 8
Bloqueado Funciones y su estructura - Nivel 9
Bloqueado Operaciones avanzadas con Strings - Nivel 10
Bloqueado Pair/Triple y funciones locales - Nivel 11
Bloqueado Null-safety y manejo seguro de nulos - Nivel 12
Bloqueado Manejo de excepciones: try/catch/finally - Nivel 13
Bloqueado when: Ramificación, validación, comandos - Nivel 14
Bloqueado Funciones de entrada/validación: Diseño de una Mini‑API de utilidad - Nivel 15
Bloqueado Mini‑Proyecto #1: Juego Adivina el número - Nivel 16
Bloqueado vararg y spread: Funciones convenientes - Nivel 17
Bloqueado Proyecto/Paquetes/Imports, Gradle, Ejecución, Construcción de JAR - Nivel 18
Bloqueado Git/GitHub: commit/branch/merge/PR, Conflictos - Nivel 19
Bloqueado Colecciones List/Set/Map, mutable/immutable, Generics: Inicio del proyecto final - Nivel 20
Bloqueado Iteración de colecciones: Iterable, withIndex, entries, eliminaciones seguras - Nivel 21
Bloqueado Lambdas y Callable References en tareas de colección - Nivel 22
Bloqueado Operaciones con colecciones I: map/filter/find/any/all/count/mapNotNull - Nivel 23
Bloqueado Operaciones con colecciones II: Ordenamiento, compareBy, Top‑N vía take(n), == vs === - Nivel 24
Bloqueado Agrupación y frecuencias: groupBy, groupingBy().eachCount() - Nivel 25
Bloqueado Agregaciones y rendimiento de Pipeline: fold/reduce, Sequence - Nivel 26
Bloqueado Taller: Reportes y Pipelines de transformación - Nivel 27
Bloqueado Strings en profundidad + Regex + takeIf/takeUnless - Nivel 28
Bloqueado Scope Functions y Mini‑Proyecto #2: Analizador de texto - Nivel 29
Bloqueado Interoperabilidad con Java: Platform Types, SAM, Java API - Nivel 30
Bloqueado Clases y Objetos: Properties, Métodos - Nivel 31
Bloqueado Constructores e init: primary/secondary, require/check - Nivel 32
Bloqueado Properties: Encapsulamiento, lateinit/lazy - Nivel 33
Bloqueado data class y value class - Nivel 34
Bloqueado enum y sealed class, is/as/as?, when exhaustivo - Nivel 35
Bloqueado Herencia y polimorfismo - Nivel 36
Bloqueado Generics en profundidad: Varianza (out/in), Projections, inline/reified - Nivel 37
Bloqueado Interfaces, SAM + object/companion object - Nivel 38
Bloqueado Extensions y Operadores - Nivel 39
Bloqueado Arquitectura y refactorización: Proyecto Final - Nivel 40
Bloqueado Excepciones: Result, runCatching, Diseño de errores - Nivel 41
Bloqueado Null-safety: Diseño sin nulos, limitaciones de smart-cast - Nivel 42
Bloqueado Archivos: Read/Write, use, Paths - Nivel 43
Bloqueado Archivos: Binario, Buffers, Copia por chunks, ZIP - Nivel 44
Bloqueado Codificaciones y BOM - Nivel 45
Bloqueado I/O confiable: IOException, Atomic Write, Backup - Nivel 46
Bloqueado Mini‑Proyecto #3: Organizador de archivos - Nivel 47
Bloqueado JSON + kotlinx.serialization - Nivel 48
Bloqueado Serialización: enum/sealed, Anotaciones - Nivel 49
Bloqueado JsonElement, Validación, JSON vs XML - Nivel 50
Bloqueado Taller XML: DOM/XPath - Nivel 51
Bloqueado Fecha y hora: kotlinx.datetime, Zonas horarias, Parsing/Formatting - Nivel 52
Bloqueado Coroutines: suspend, runBlocking, launch/async, Dispatchers - Nivel 53
Bloqueado Concurrencia estructurada: scope/job, Cancelación, Excepciones, withContext - Nivel 54
Bloqueado Channel y Flow - Nivel 55
Bloqueado Sincronización: Mutex, Atomic*, actor/confinement - Nivel 56
Bloqueado I/O Asíncrono y Cancelación - Nivel 57
Bloqueado Eventos/Observer y conexión con Flow - Nivel 58
Bloqueado HTTP + Ktor Client + JSON - Nivel 59
Bloqueado DB: JDBC + Exposed + Transacciones - Nivel 60
Bloqueado Logging y Observabilidad - Nivel 61
Bloqueado Reflection + KSP + Kotlin 2.x + Memoria JVM - Nivel 62
Bloqueado Proyecto Final