¿Será 2017 el año de Kotlin? Repasamos su evolución y por qué deberías darle una oportunidad

¿Será 2017 el año de Kotlin? Repasamos su evolución y por qué deberías darle una oportunidad
Sin comentarios Facebook Twitter Flipboard E-mail

Kotlin es un lenguaje creado por la compañía Jetbrains, del que ya hemos hablado varias veces en este blog, y con tan solo un año de vida, parece estar causando un gran revuelo en los últimos tiempos.

¿A qué se debe? En este artículo te cuento un poco la historia del lenguaje, y cuáles creo que son los factores que están haciendo que su acogimiento esté siendo tan rápido.

Los orígenes de Kotlin

Por si no has oído hablar anteriormente de este lenguaje, Kotlin se empezó a gestar hace unos 6 años, con la idea inicial de sustituir a Java como lenguaje de programación para los proyectos desarrollados por Jetbrains, compañía conocida por sus diferentes IDEs, entre el que destaca IntelliJ.

Se plantearon la necesidad de un lenguaje que les permitiera escribir un código más mantenible y adecuado a las condiciones actuales del desarrollo. Java se estaba quedando atrás debido al requisito de conservar su retrocompatibilidad, y esto les suponía un problema en su día a día.

Buscaban un lenguaje que corriera sobre la JVM, y que fuera extremadamente interoperable con Java en ambas direcciones, ya que no podían rehacer toda su base de código.

Tras valorar las distintas opciones, llegaron a la conclusión de que no había ninguna alternativa que les cubriese todas sus necesidades, por lo que se lanzaron a crear el suyo propio.

Las bases de Kotlin

El lenguaje no podía seguir la estela sin más de otros lenguajes de la JVM. Decidieron marcarse los siguientes objetivos:

  • Que fuera sencillo y pragmático: No querían hacer un lenguaje extremadamente complicado como miles de opciones, sino algo que les permitiera expresar mucho con la menor cantidad de código posible, y que a la vez que redujera lo máximo posible la curva de aprendizaje de desarrolladores Java.
  • Totalmente interoperable con Java: esto era una máxima. El resto de lenguajes desarrollados sobre la JVM, de un modo u otro, dificultaban el poder escribir código donde se mezclaran ambos lenguajes. Kotlin fue pensado para que cualquier código escrito en Java se pudiera usar directamente desde Kotlin, y viceversa.
  • Ligero: no querían que el lenguaje fuera muy pesado, con el fin de que pudiera crearse código que corriera en cualquier dispositivo. Desde el principio vieron el potencial que podría aportar sobre Android, así que a ello se unió la premisa de que tenía que ser compatible con Java 6.

Con estas ideas comenzaron a crear su lenguaje, que 5-6 años después vería la luz.

2015: la primera gran explosión

"JAVA SE ESTABA QUEDANDO ATRÁS DEBIDO AL REQUISITO DE CONSERVAR SU RETRO-COMPATIBILIDAD"

El lenguaje fue evolucionando, y es allá por 2015 cuando, movido en parte por Jake Wharton y su documento donde comparaba las distintas opciones a la hora de desarrollar Apps en Android, Kotlin comienza a ganar popularidad.

Por aquel entonces Kotlin aún se encontraba en una Early Access Preview, pero en el documento ya se exponían motivos por los que este lenguaje era una gran alternativa para desarrollar en Android.

La comunidad Android, una de las más activas en el mundo Java, lo recibió con gran curiosidad, lo que supuso un gran empujón para el lenguaje. El equipo de Jetbrains supo entonces que necesitaban dar todas las facilidades a desarrolladores Android para utilizar su lenguaje.

A finales de 2015 se publicó la beta de la versión 1.0 de Kotlin, dejando claro que aquello iba en serio, y animó a mucha más gente a dar el salto.

2016: Kotlin lanza su versión 1.0 final

Hace aproximadamente un año, Kotlin anuncia el lanzamiento de la versión final de Kotlin, que hará que la adopción del lenguaje se haga algo exponencial.

Kotlin 1

Muchas personas comienzan a utilizarlo en producción y a compartir su experiencia, animando a muchos otros a seguir sus pasos.

Pero esta no es la única razón por la que la aceptación de Kotlin se convierte en algo tan espectacular. Estos son algunos de los hitos más relevantes.

Gradle anuncia que soportará oficialmente Kotlin

Una de las mayores sorpresas que nos trajo 2016 fue la presentación de que Kotlin sería oficialmente acogido por Gradle, como alternativa a Groovy, para escribir sus scripts.

Kotlin Gradle

Las características de lenguaje fuertemente tipado unidas a su capacidad de inferencia de tipos, lo convierten en un lenguaje con las ventajas de Groovy, pero que permite al IDE ayudarnos con autocompletado y chequeos en tiempo de compilación.

Kotlin desvela sus novedades: 1.1 e independencia de la JVM

Si algo se le podía achacar a Kotlin, era su dependencia con la Máquina Virtual de Java. Aunque ya existía Kotlin JS, para la versión 1.0 del lenguaje se había quedado como una feature experimental.

El equipo de Kotlin anuncia que la versión 1.1 incluirá Kotlin JS al completo, y que además están trabajando en un compilador nativo que les permitiría ejecutar código Kotlin sobre cualquier plataforma.

Además, anuncia novedades muy interesantes sobre el lenguaje como las co-rutinas, o los type aliases entre otros.

2017: El año de Kotlin

Si bien es cierto que durante el 2016 el crecimiento ha sido imparable, parece que es este 2017 cuando su uso se va a hacer más y más extendido.

Sobre todo en la comunidad Android, que es donde más me muevo, prácticamente todo el mundo ha oído hablar de él, y cada vez más personas se lanzan a utilizarlo en sus propios proyectos y en producción.

Pero esto no se queda sólo aquí, ya que uno de los pesos pesados en backend también da un paso adelante.

CADA VEZ MÁS PERSONAS SE LANZAN A UTILIZARLO EN SUS PROPIOS PROYECTOS Y EN PRODUCCIÓN

Spring anuncia soporte oficial para Kotlin

Uno de los frameworks más utilizados para servidores en Java publica su soporte para Kotlin. La compañía detrás de Spring trabajó mano a mano con el equipo de Kotlin para solventar algunos de los problemas que tenían para soportar Kotlin (principalmente que todas las clases fueran cerradas por defecto).

Ahora Spring incluye un set de utilidades que aprovecha el potencial de Kotlin para hacer que el desarrollo sea aún más sencillo.

Se publica Kotlin 1.1

Casi un año después del lanzamiento de Kotlin, el 1 de marzo se publica la mayor revisión del lenguaje hasta la fecha.

Sus dos principales novedades: Kotlin JS y las co-rutinas.

El primer punto implica que todas las features del lenguaje llegan a la web, y su interoperabilidad con Javascript vuelve a ser nuevamente una de sus mayores bazas. No necesitas crear todo tu código desde cero en Kotlin.

Además, las co-rutinas, un mecanismo para escribir y coordinar código asíncrono de forma síncrona, abre un mundo de posibilidades sobre el lenguaje. Al ser simplemente un pequeño framework, cualquiera puede crear librerías sobre el mismo para ajustar su funcionamiento a situaciones concretas.

Todas estas novedades han hecho que su aceptación no haya parado de crecer y que este haya sido exponencial. Una prueba de ello es que ya hay más de 10 millones de líneas de código repartidas en más de 8000 proyectos en Github, y que empresas como Netflix, Pinterest, Basecamp o Square ya lo están utilizando en producción.

Kotlin Open Source

¿Qué podemos esperar de Kotlin en el futuro?

A pesar de todo este movimiento, aún hay gente rehacia a lanzarse a la piscina, con un lenguaje relativamente joven y que las grandes compañías aún están empezando a utilizar.

Hay un par de cosas que creo que servirán de impulso para que más personas y empresas empiecen a utilizarlo:

  • Más casos de éxito en producción: si bien es cierto que cada vez hay más, aún no son muchas las compañías que utilizan el lenguaje y cuentan su experiencia públicamente. Ser capaces de explicar las ventajas y de eliminar las trabas ayudarán a que este lenguaje siga evolucionando. Estoy seguro de que este 2017 vamos a tener ejemplos más que de sobra.
  • Un posicionamiento por parte de Google: si bien es cierto que Google ya mencionó que no tenían ningún problema con que la gente usase Kotlin y que no iban a poner trabas para su uso, una buena parte de la comunidad Android sigue esperando un soporte oficial por parte de la compañía que desarrolla Android.

HAY MÁS DE 10 MILLONES DE LÍNEAS DE CÓDIGO REPARTIDAS EN MÁS DE 8000 PROYECTOS EN GITHUB

Sinceramente me parece difícil que Google se posicione, por lo que eso hace aún más necesario que se disipen todas las dudas que genera su uso en el desarrollo de aplicaciones Android. Es el sector en el que está habiendo una mayor aceptación, debido a las limitaciones inherentes de trabajar sobre una máquina virtual que sólo soporta Java 6.

Por ello, tiene el potencial de convertirse en el lenguaje de referencia para el desarrollo de Apps en Android.

Kotlin es un lenguaje muy joven, pero maduro en cuanto a sus funcionalidades y estabilidad, por lo que es un buen momento para empezar a utilizarlo y descubrir todas sus ventajas.

Ya hablamos en su momento en GenbetaDev de las características del lenguaje, y si quieres ahondar en su uso en Android, puedes echar un ojo a esta guía para iniciarte.

Comentarios cerrados
Inicio