Java & Kotlin: Interoperabilidad al 100
2020-10-03, 11:20–12:00, JVM Languages, Architecture

Kotlin es un lenguaje moderno que podemos usar en la JVM. Muchos queremos escribir todo nuestro código en Kotlin, pero ¿qué pasa con las de líneas de código que ya tenemos escritas en Java? O tal vez tenemos una librería escrita en Kotlin y queremos que se pueda usar de manera fluida desde Java.

En esta charla, veremos las mejores prácticas para escribir código Kotlin y Java que funcione de manera tan fluida del otro que la única forma de saber en qué lenguaje está escrito es mirando el código fuente.


Kotlin es un lenguaje de programación diseñado para interoperar completamente con Java. Incluso, la versión de la librería estándar de Kotlin para la JVM depende de la Java Class Library.

Aun así, ambos lenguajes poseen características diferentes las cuales son responsabilidad del desarrollador manejar para lograr la mayor interoperabilidad pero siempre manteniendo las mejores practicas en ambos lenguajes.

Al invocar código Java desde Kotlin el desarrollador deberá tomar en cuenta caracterīsticas de Kotlin como nulabilidad, propiedades y operator overloading.

Si invocas código Kotlin desde java el desarrollador debe tener en cuenta caracterīsticas de Java que no están en Kotlin como funciones estáticas y checked exceptions. Kotlin posee varias anotaciones que el compilador interpreta para generar código bytecode que pueda ser mejor manejado desde código Java.