Blog  //  Agosto 2017  //  Introducción a Kotlin

Introducción a Kotlin



Aunque en el CDM (Centro de Desarrollo de Movilidad) hay compañeros que ya conocen Kotlin mejor que yo, he intentado hacer un artículo que sirva para novatos. La intención es que alguien que ahora mismo desconozca Kotlin por completo sepa en 10 minutos lo básico para comenzar a programar con esta tecnología, teniendo acceso a toda la documentación y tutoriales necesarios para ello.
 

¿Qué es Kotlin?

Kotlin es un lenguaje desarrollado por Jetbrains, los creadores del IDE IntelliJ, que como todos sabréis, es el germen de Android Studio. Permite desarrollar aplicaciones nativas para Android, usando el mismo Android Studio, y sus principales características son:
  • Sencillez y potencia. Por ejemplo, Jetbrains presume de la reducción de un 30% en las líneas de código en la aplicación Keepsafe’s App Lock tras su migración a Kotlin.
  • 100% interoperable con Java, esto es, permite usar cualquier código escrito en Java. Es decir, podemos usar cualquier librería “clásica” de Android.
  • Curva de aprendizaje muy sencilla, sobre todo para desarrolladores que ya conozcan Java.
  • Compatibilidad con todas las versiones de Android, ya que es  totalmente compatible con JDK6.
  • Rendimiento. Jetbrains incide en que el rendimiento que se alcanza usando Kotlin es como mínimo igual que utilizando Java, y a veces mejor, gracias a características como la posibilidad de usar funciones inline.
Y lo más importante de todo es que, tras 5 o 6 años desde el nacimiento de Kotlin, Google acaba de hacer oficial el soporte a este lenguaje dentro de Android Studio. Lo ha anunciado en la conferencia Google I/O del pasado mes de mayo, con lo que se abre la puerta a posibles proyectos realizados íntegramente con esta nueva tecnología.

 
¿Cómo comienzo con Kotlin?

Si alguien quiere comenzar a desarrollar con Kotlin, debe saber que dispone de dos opciones:
  • Usar Android Studio con el plugin de Kotlin.
  • Instalar la preview de Android Studio 3.0, que ya integra el soporte a Kotlin de manera nativa.
 
La primera opción es muy estable, yo mismo la he probado y tengo que decir que no tuve ningún problema en realizar mi primer Hello world en Kotlin. Si elegís esta opción, podéis seguir los pasos de este enlace, donde encontrareis una sección Getting Started que os guiará en la instalación del plugin de Kotlin y posterior creación de vuestra primera aplicación.  También os dejo este pdf  que compartió hace unos meses nuestro compañero Ismael González, consiste en una guía rápida para hacer una aplicación en Kotlin en 15 minutos.
 
La opción número 2 implica utilizar una versión inestable de Android Studio, lo cual no parece muy problemático dado el carácter experimental de todo lo que tratemos con Kotlin ahora mismo. Por ahora desconozco si Android Studio 3.0 da muchos problemas en su última versión Canary, pero las ventajas parecen claras: ahorrarse la instalación del plugin, y familiarizarse con la próxima versión de Android Studio, que incluye más características además del soporte a Kotlin.  Si optáis por esta posibilidad, visitad este enlace para crear vuestro primer proyecto. Es tan sencillo como crear un proyecto Android y, en el asistente de creación, seleccionar Kotlin como lenguaje fuente. Otro punto a favor es que la preview de Android Studio 3.0 se instala aparte del Android Studio estable que tengamos instalado, por lo que no hay riesgo de “estropear” nuestros proyectos actuales con actualizaciones o plugins (ya sabemos que no deberían dar error, pero no será la primera vez que instalar un plugin provoca tener que reinstalar un IDE entero). Podremos diferenciar entre ambas versiones por el color del icono (amarillo para la preview y verde para la versión estable de siempre).

¿Y cómo es Kotlin?

Solo tengo unas cuantas horas de experiencia con el código, por lo que mis conclusiones en este punto son en realidad unas primeras impresiones:
 
  • El cambio al nuevo lenguaje no es nada traumático, cosa que se agradece. Mismo IDE, sintaxis similar, etc.
  • Sí, parece sencillo de usar. Como digo, apenas he tocado unas decenas de código, pero da la sensación  de ser un lenguaje que realmente requerirá menos código que Java para hacer lo mismo.
  • Si has programado en Java, vas a entender Kotlin a la primera. Hay que adaptarse un poco, olvidar los puntos y comas, usar alguna notación nueva, etc. Pero viendo ejemplos de código ya implementados y funcionales, puedo decir que resulta muy cómodo de leer.
  • Ya hay librerías para Kotlin que facilitan mucho la vida del programador Android, usadlas. Los primeros ejemplos que me encontré fueron las Kotlin Android extensions  o Anko, pero lo ideal es que profundicéis vosotros mismos en los recursos oficiales disponibles para Kotlin  (entre los que se encuentra un libro publicado por el español Antonio Leiva, conocido por cualquier programador Android que se precie).
 

Conclusiones

En definitiva, a mi me ha gustado, parece versátil y fácil de usar. Sí es verdad que los tiempos de compilación son algo menores, que es necesario menos código, y que se pueden utilizar todas las librerías Android, no veo motivo para no empezar a usarlo desde ya. Aún parece pronto para comenzar a usarlo en todos los proyectos nuevos del CDM, pero es algo que creo que se podría plantear en cuanto se libere la versión estable de Android Studio con soporte Kotlin nativo.
 
Esto es todo, por ahora. Tengo la firme intención de realizar mi próximo proyecto personal en Kotlin, por lo que espero poder volver en unos meses por este blog para contaros cosas más interesantes y útiles, con mayor nivel de detalle.
Comentarios:
Alberto
Muy Bueno!!!!
21/08/2017 11:44:47

 Security code