← Más ejemplos de otros lenguajes
Kotlin es el lenguaje oficial para crear apps de Android: Google lo adoptó en 2017 y desde 2019 Android es «Kotlin-first». Lo creó JetBrains, funciona sobre la máquina virtual de Java y se mezcla sin fricción con código Java, y hoy también se usa en servidores (Ktor, Spring Boot) y para compartir código entre Android, iOS y web con Kotlin Multiplatform. Aquí tienes un curso desde cero, sus rarezas, un test y 12 ejemplos para tareas concretas. Todo el código se compiló con Kotlin 2.4.21 y se ejecutó en Java 25 antes de publicarse.
Curso · 8 leccionesAprende Kotlin desde cero, en españolDel primerfun main() a un proyecto con Gradle y pruebas: variables y funciones, when y colecciones, null safety, data classes y sealed, lambdas y funciones de extensión, y corrutinas. Con esquemas, retos y el mensaje real del compilador en cada error.Ir al curso → RarezasLo que sorprende de KotlinComportamientos reales que confunden incluso a quien viene de Java, comprobados uno por uno con su salida o su mensaje de error.Ver las rarezas → Test · 24 preguntas¿Compila o no?24 preguntas sobre el curso: decide si el código compila y qué escribe. Con la nota, los aciertos por lección y el mensaje real de kotlinc en cada respuesta.Hacer el test →Cada ejemplo es un archivo .kt con su fun main(): se compila con kotlinc archivo.kt -include-runtime -d archivo.jar y se ejecuta con java -jar archivo.jar. Los que usan una biblioteca (kotlinx.serialization, corrutinas, SQLite o Ktor) indican la línea que va en el build.gradle.kts de tu proyecto. Si vienes de Java, la sección de Java tiene la versión equivalente de casi todos.
Datos: JSON, CSV, fechas y texto
- JSON con kotlinx.serializationJSON en Kotlin con kotlinx.serialization 1.12: el plugin y la dependencia, encodeToString y decodeFromString, prettyPrint, ignoreUnknownKeys, valores…
- Leer y escribir CSVCSV en Kotlin sin bibliotecas: por qué split falla con las comillas, un lector que sigue el RFC 4180, cada fila a una data class, dinero con…
- Fechas y horas con java.timeFechas en Kotlin con java.time: LocalDate, LocalDateTime y ZonedDateTime, formatos en español de México, las trampas de YYYY y mm, Period y Duration…
- Expresiones regularesExpresiones regulares en Kotlin con Regex: buscar, matches frente a containsMatchIn, cadenas crudas, grupos con nombre, reemplazar con lambda…
- Ordenar y buscar en listasOrdenar y buscar en Kotlin: sorted frente a sort, texto en español con Collator, compareBy y thenBy, find, first frente a firstOrNull y búsqueda…
Red, bases de datos y servidores
- Peticiones HTTP con HttpClientPeticiones HTTP en Kotlin con el HttpClient de la JVM: GET, POST con JSON, por qué un 404 no lanza excepción, los dos tiempos de espera, peticiones…
- Un servidor web con KtorUn servidor web en Kotlin con Ktor 3 y Netty: el build.gradle.kts, rutas GET y POST, JSON con kotlinx.serialization, parámetros de ruta, códigos de…
- Base de datos SQLite con JDBCBase de datos SQLite desde Kotlin con JDBC y sqlite-jdbc: crear la tabla, insertar y consultar con PreparedStatement, use para cerrar, parámetros…
Programas de línea de órdenes
- Argumentos de la línea de órdenesLeer los argumentos de un programa de Kotlin con args, interpretar opciones como -n y –ayuda a mano, salir con exitProcess y el código correcto, y…
- Configuración con variables de entornoConfiguración con variables de entorno en Kotlin: System.getenv y null, valores por omisión con ?:, toIntOrNull, validar todo al arrancar y el…
- Leer y escribir archivos de textoArchivos de texto en Kotlin: writeText, appendText y readText, useLines para archivos grandes, bufferedWriter con use, carpetas con kotlin.io.path y…
- Tareas en paralelo con corrutinasTareas en paralelo con corrutinas de Kotlin: async y awaitAll frente a hacerlo en serie, limitar con Semaphore, código bloqueante en Dispatchers.IO y…
Todo el código se compiló con Kotlin 2.4.21 y se ejecutó en Java 25 (Temurin 25.0.5) en un contenedor limpio y sin red antes de publicarse; los mensajes del compilador y las salidas están copiados de esa ejecución. Kotlin® es una marca registrada de la Kotlin Foundation; decodigo.com no tiene relación con ella. Las imágenes de esta sección llevan a Kodee, la mascota de Kotlin: «Kodee by JetBrains s.r.o. is licensed under CC BY 4.0».
