Qué Es Kotlín
Qué Es Kotlín
Características de Kotlín
Interoperabilidad con código Java
Una de las características principales de Kotlin es que está diseñado para
interoperar completamente con la sintaxis del lenguaje de Java. Es decir, con
una base de código existente escrita en Java, puede interactuar correctamente
con Kotlin y viceversa.
Corrutinas
Otra de las grandes ventajas de Kotlin es que las corrutinas optimizan la
programación asíncrona. Simplifican así el aburrido trabajo de las llamadas de
red y acceso a las bases de datos, y dejan atrás los callbacks.
Desarrollo multiplataforma
Kotlin se puede utilizar para cualquier tipo de desarrollo, desde la web del lado
del servidor y del lado del cliente, hasta Android e iOS. Como el lenguaje se
ejecuta en JVM, permite compartir código entre diferentes plataformas.
Flexibilidad
Kotlin da a los desarrolladores libertad de trabajar con el estilo que elijan. Por
tanto, es un lenguaje altamente flexible que tiene construcciones funcionales y
orientadas a objetos. Todo ello se traduce en una mejor experiencia a la hora
de programar.
Sintaxis de Kotlin
Ya hemos hablado de lo fantástico que es Kotlin y su sintaxis, pero ahora es el
momento de demostrarlo en el papel.
Variables
En Kotlin podemos decidir si nuestra variable será como su propio nombre
indica una variable o si por el contrario será constante, esto nos da el don de la
inmutabilidad que nos librará de errores y además ahorrará memoria.
Si quisiéramos un valor constante utilizaríamos la palabra reservada val
val name = "Aris"
Si por el contrario queremos que sea variable la reemplazaríamos por var
var name = "Aris"
Si te fijas bien en los ejemplos anteriores verás que no he definido el tipo de
variable ya que Kotlin es capaz de adivinar el tipo por el valor asignado.
Aunque también podremos añadírselo nosotros mismos para forzar.
var name:String = "Aris"
Funciones
Podemos distinguir tres tipos distintos, básicas, con parámetros de salida o con
parámetros de entrada.
La más básica sería utilizando la palabra reservada fun seguido del nombre de
esta.
fun greetings(){ print("Hello!") }
Si quisiéramos que nos saludara con un nombre concreto crearíamos una
función con variable de entrada.
fun greetings(name:String){ print("Hello! $name") }
Nuestra función puede recibir entre cero y N parámetros y lo concatenamos a
nuestro saludo. A diferencia de Java podemos crear parámetros opcionales y
gracias a ello tenemos la posibilidad de pasar el parámetro o no.
fun greetings(name:String = "Guest"){ print("Hello! $name") }
Si recibe el parámetro name contendrá dicho valor, sino usará el de por
defecto.
Para terminar, te mostraré como devolver el saludo, es tan sencillo que solo
debemos definir el tipo de valor que vamos a devolver y retornarlo.
fun greetings(name:String = "Guest"): String{ return "Hello! $name" }
Sencillo ¿Verdad? Pues lo podemos aún simplificar más ya que Kotlin nos
permite dejar el código impoluto con cualidades como esta.
fun greetings(name:String = "Guest") = "Hello! $name"
Hemos pasado de tener una función de tres líneas a conseguir la optimización
por excelencia y dejar un código limpio y sencillo.
Funciones de extensión
Esta es otra de las novedades de Kotlin, este tipo tan singular de funciones nos
permite extender de cualquier tipo de código para crear funciones exclusivas.
Si ya desarrollas con Java sería como la función vitamina de las funciones
estáticas.
Esto es realmente útil para las funciones repetitivas que debemos realizar por
todo nuestro proyecto. Pongamos el ejemplo de Glide, posiblemente la librería
más popular a día de hoy para cargar urls en imageViews. Normalmente
tendríamos que ir en cada una de las clases donde lo queramos usar
añadiendo
Glide.with(context) .load(myUrl) .into(myImageView)
Ahora solo tendríamos que definir una función que extienda de un imageView
fun ImageView.loadUrl(url:String)
{ Glide.with(this) .load(myUrl) .into(this) }
Además, podemos usar el propio componente para acceder a su contexto.
Ahora en cualquier sitio de nuestra app que queramos usar Glide solo
tendremos que acceder al imagieView y tendrá la nueva función
implementada.
myImageView.loadUrl(url)
Conversión / as, as?, is, !is, in, !in, typealias, Conversión, chequeo de
Tipos typeof tipo y alias
Espacio de
package, import Organización de código
nombres
PALABRAS CLAVE SUAVES (pueden ser identificadores en
contextos no reservados)
Concepto Palabra clave Descripción
Declaración de constructor
Constructores constructor
primario o secundario
Variancia de tipos
Genéricos in, out
genéricos
Operadores y
operator, infix Sobrecarga y uso infijo
sintaxis
Historia de Kotlin
La historia de Kotlin comienza con una necesidad insatisfecha en el corazón de
JetBrains, una empresa de software conocida por sus potentes entornos de
desarrollo. A principios de la década de 2010, los ingenieros de JetBrains
trabajaban diariamente con Java, un lenguaje confiable pero que, a menudo,
requería de mucho código repetitivo y carecía de algunas de las funciones
modernas que otros lenguajes ya ofrecían. Ellos sabían que el mundo del
desarrollo estaba cambiando rápidamente y que los desarrolladores
necesitaban una herramienta más ágil, pero que no les obligara a abandonar
por completo el ecosistema de Java.
Inspirados por la posibilidad de crear algo nuevo, el equipo se embarcó en un
proyecto ambicioso: diseñar un lenguaje de programación que combinara lo
mejor de ambos mundos, aprovechando la madurez de Java, pero con la
simplicidad y elegancia de los lenguajes más modernos. Así nació Kotlin, un
lenguaje que prometía ser el aliado perfecto para los desarrolladores en busca
de eficiencia.
Tras años de trabajo meticuloso y pruebas internas, el equipo de JetBrains
liderado por Dmitry Jemerov, lanzó la primera versión de Kotlin en 2011. Su
nombre, Kotlin, viene de una isla rusa que controlaba el acceso a San
Petersburgo con unas fortificaciones que han sido declaradas Patrimonio de
la humanidad por la UNESCO. Fue un momento emocionante, aunque
sabían que el camino hacia la aceptación sería largo. Los ingenieros de
JetBrains escuchaban atentamente a la comunidad de desarrolladores,
ajustando y perfeccionando el lenguaje para asegurarse de que cada línea de
código escrita en Kotlin valiera la pena. Finalmente, en 2016, Kotlin 1.0 se lanzó
como una versión completamente estable, y el sueño de JetBrains de un
lenguaje conciso, poderoso y compatible con Java se hizo realidad.
Pero el verdadero punto de inflexión llegó en 2017, cuando Google anunció a
Kotlin como un lenguaje oficial para el desarrollo de Android. Este respaldo fue
la validación que JetBrains había esperado, y el resto es historia. Kotlin no solo
cumplió con su promesa de simplificar el desarrollo, sino que se convirtió en el
lenguaje que muchos desarrolladores habían estado esperando, demostrando
que una pequeña chispa de necesidad puede encender el fuego de una
verdadera revolución tecnológica.