Kotlin es un lenguaje de programación pragmático pensado para funcionar con Máquina Virtual de Java (JVM) y Android. Además, puede ser compilado a código fuente de Javascript.
Se caracteriza por una perfecta combinación de características claramente orientadas a la funcionalidad durante la programación, centrándose en la seguridad, la claridad y la interoperabilidad.
Los programas en Kotlin pueden utilizar los frameworks y librerías de Java existentes. Así mismo, su interoperabilidad no requiere capas de adaptación.
Kotlin fue bautizado en honor a la isla del mismo nombre, cercana a San Petersburgo, sede de la empresa JetBrains, cuyo equipo de programadores se encargó de su desarrollo.
Su sintaxis es igualmente intuitiva. Tiene un considerable parecido con Scala –por ejemplo, los puntos y comas como cierre de frase son opcionales, y los saltos de línea suelen bastar para que el compilador entienda que la declaración ha terminado–, no obstante, es más simple y permite una compilación más rápida.
En el 2012, la empresa liberó el código fuente bajo la licencia Apache 2.
El hecho de que se trate de un lenguaje open source no es la única causa de su rápida expansión. La herramienta de conversión en un clic de Java a Kotlin ha facilitado notablemente su crecimiento en el mercado.
Kotlin vs. Java
Según las palabras de Andrey Breslav, líder de desarrollo de Kotlin, este lenguaje ha sido diseñado para superar a Java pero sin dejar de ser interoperable con el código Java. El propósito último no es otro que facilitar la migración a Kotlin.
Tras ser nombrado lenguaje del mes por la revista Dr. Dobb en el año 2012, alcanzó uno de sus mayores hitos en la última edición del Google IO celebrada el año pasado.
Contra todo pronóstico, Google declaró Kotlin como lenguaje oficial en Android, equiparándolo así a Java y C++. Sin duda, se trata de todo un espaldarazo del gigante californiano a las aspiraciones de Kotlin como sucesor de Java.
Nadie puede afirmar con seguridad si Kotlin llegará a sustituir a Java; sin embargo, no faltan argumentos para ello:
La adopción de Kotlin presenta un riesgo muy bajo gracias a su interoperabilidad con Java
Kotlin puede ser puesto a prueba en tan solo una parte del código, sin necesidad de alterar la totalidad del proyecto. Se exporta una API de Java, cuya apariencia es idéntica al código de Java.
Si, finalmente, se decide continuar utilizando Kotlin, se puede migrar el código existente o mantener el código Java legado, utilizando Kotlin para las nuevas clases y funcionalidades.