¿Qué es Kotlin?

Kotlin es un lenguaje de programación creado en 2011 que funciona con JVM (Máquina Virtual de Java) y se utiliza como lenguaje alternativo a Java en Android.

Google anunció en 2017 durante la conferencia de #IO17 que Kotlin sería uno de los lenguajes principales para el desarrollo de apps.

 Orientando a la funcionalidad se centra en la claridad, seguridad y la interoperabilidad. Utiliza frameworks y librerías existentes de Java sin necesidad de crear capas de adaptación.

¿Utilizar VAL o VAR?

Se recomienda el uso de la keyword VAL para  asegurar la inmutabilidad del código.

COMPROBACIONES DE NULIDAD
Kotlin cuenta con numerosos mecanismos para evitar que podamos acceder a punteros que valgan null y, así, provocar numerosas NullPointerExceptions, uno de los mayores problemas de Java.

Ejemplo:

var cadena:String = "uno"
cadena = null // Error de compilación 

Permitir que cadena valga null:

var cadena:String? = "uno"
cadena = null // Ahora SÍ
print(cadena)
Safe Calls 

Kotlin cuenta con el ? (Safe Call Operator) para tener la seguridad de que la variable no vale null.

Ejemplo:

var cadena:String? = null
println(cadena?.length)
Elvis Operator 

Utilizaremos el operador Elvis para usar un valor por defecto en el caso de que la variable sea null.

Ejemplo:

val l = b?.length ?: -1
filterNotNull 

Kotlin cuenta con muchas utilidades que nos simplifican el trabajo en relación a los punteros a null.
Si no utilizamos Int? no permitiría introducir ningún valor de null dentro de la lista.

Ejemplo:

val listaConNulos: List<Int?> = listOf(3, 5, null, null, 8)
val listaEnteros: List = listaConNulos.filterNotNull() 

Arrays de tipo primitivo
Kotlin permite utilizar Array y sus métodos de factoría, o bien, permite usar IntArray, DoubleArray y ShortArray.

Ejemplos:

val x: IntArray = intArrayOf(1, 2, 3)
val x: IntArray = IntArray(3) { it + 1 } 

En definitiva, el lenguaje de programación Kotlin se compila con Java ya que a nivel de funcionalidad ambos lenguajes son equivalentes.

Sin embargo aporta numerosas ventajas que hacen frente a muchos de los problemas que presenta Java, convirtiéndolo así, en el lenguaje principal de Android.

¿Quieres un plan de formación personalizado?


    *requerido

    • Responsable de los datos: IMAGINA WEB & MOBILE TECHNOLOGIES S.L.
    • Finalidad de los datos: Responder a la información solicitada, envío de boletines de noticias y ofertas.
    • Destinatarios: IMAGINA WEB & MOBILE TECHNOLOGIES S.L. No se cederán los datos a terceros.
    • Derechos: En cualquier momento puedes acceder, recuperar y borrar tu información.