Kotlin 2.4: Swift export en alpha, UUID estable y GC concurrente en Native

Kotlin 2.4.0 llegó el 3 de junio de 2026, el mismo día que Elixir 1.20. JetBrains publicó el lanzamiento con varias mejoras en Kotlin Multiplatform, el compilador nativo y la integración con Java. Nada tan revolucionario como el salto de 1.x a 2.0, pero hay cambios concretos que merecen atención.

Swift export en alpha: Kotlin y Swift se hablan directamente

El cambio más llamativo para los desarrolladores que trabajan con iOS y Android en el mismo repositorio: Swift export pasa a alpha. Hasta ahora, para llamar a código Kotlin desde Swift había que pasar por el runtime de Objective-C, lo que producía interfaces incómodas y tipos que no encajaban bien con las convenciones de Swift.

Con Swift export en alpha, Kotlin puede generar bindings Swift idiomáticos directamente. Los tipos de Kotlin se mapean a los tipos naturales de Swift, las clases y structs de Kotlin se exponen con la nomenclatura que Swift espera, y Kotlin Multiplatform Gradle puede declarar Swift packages como dependencias del proyecto iOS sin pasos manuales intermedios.

Es alpha, así que no está lista para producción, pero el cambio es estructural: abre la puerta a que una librería Kotlin pueda publicarse como Swift Package y ser consumida por proyectos iOS nativos sin fricciones.

UUID estable en la librería estándar común

Antes de 2.4, si necesitabas UUIDs en código multiplataforma (Android + iOS + JVM + web) tenías que depender de librerías de terceros porque no había un tipo UUID en la librería común de Kotlin. En 2.4.0 kotlin.uuid.Uuid es estable. El mismo tipo funciona en todas las plataformas objetivo sin bridges ni dependencias externas.

Garbage collector concurrente en Kotlin/Native

Kotlin/Native (el compilador que genera binarios para iOS, macOS, Linux y Windows sin la JVM) tiene desde 2.4 el recolector de basura concurrente activado por defecto. En versiones anteriores las pausas del GC podían causar frames perdidos en animaciones o latencia perceptible en la UI de iOS. El GC concurrente reduce estas pausas al mínimo moviendo buena parte del trabajo de recolección fuera del hilo principal.

Soporte completo para Java 26

Kotlin 2.4 puede compilar targeting Java 26, el bytecode más reciente. Esto es relevante para proyectos de backend que usen las últimas APIs de la JDK, incluido el soporte preview de Project Valhalla (Value Classes, que cubrimos en el artículo sobre Project Valhalla en JDK 28).

Requisitos actualizados

2.4.0 eleva el mínimo recomendado del plugin de Gradle de Android a AGP 8.5.2. Si tu proyecto usa una versión anterior del plugin, el compilador sigue funcionando pero con warnings de compatibilidad. La actualización del plugin está bien documentada en la guía de migración de JetBrains.

Kotlin Multiplatform en 2026

El estado del arte en este momento: KMP es viable en producción para lógica de negocio compartida entre Android, iOS, desktop y web. La parte más madura es Android + JVM. iOS con Kotlin/Native es estable pero requiere más configuración. Kotlin/Wasm (para el navegador) sigue siendo experimental.

Con los artículos previos sobre Kotlin con Spring Boot y Kotlin/Wasm, este lanzamiento cierra un ciclo: el lenguaje tiene cobertura real en backend, móvil, desktop y web desde una sola base de código.

Imagen: Pexels / Kelvin Valerio

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP