Pro Blogger Templates

Kotlin vs Java ¿Cuál es la mejor elección para el desarrollo en Android?

Kotlinzilla vs. Java Kong

A la hora de aprender a programar aplicaciones para Android se repite continuamente la misma pregunta ¿Java o Kotlin? Obviamente no es una respuesta simple ya que debemos analizar no solo el código sino el ecosistema entero. 

¿Qué es Java?

Java es un lenguaje de programación de la empresa Oracle y uno de los lenguajes más populares a nivel mundial, ya que más de 10 billones de dispositivos lo usan.

Java fue diseñado para crear aplicaciones sencillas pero ha derivado en un monstruo (en el buen sentido de la palabra) capaz de cualquier cosa, desde crear aplicaciones de escritorio hasta ser el backend de muchos de los sistemas mas grandes actualmente. 

¿Qué es Kotlin?

Kotlin ha sido desarrollado por JetBrains, compañía líder en la creación de IDE's como IntelliJ o WebStorm. 

Kotlin ha ido ganando popularidad sobre todo en la creación de aplicaciones Android y en Backend desde que Google anunció que Android sería Kotlin First, es decir, se crearían las nuevas características enfocadas a Kotlin y luego las harían compatibles con Java. Entre eso y la potencia y simpleza a la hora de crear aplicaciones ha hecho que Java vaya decayendo y el mercado mobile se centre en dicho lenguaje. 

Conseguir trabajo

A la hora de aplicar para un trabajo cada una de las opciones tiene puntos a favor y en contra. Para empezar debemos entender que la mayoría de los proyectos se han migrado o se están migrando, así que si queremos tirar por Java debemos buscar proyectos que no tengan interés en migrarse, estos suelen ser proyectos demasiado grandes o que no interesa ya que casi no tiene actualizaciones.

Si buscamos por Kotlin la mayoría de los proyectos serán nuevos, aunque como comenté anteriormente podemos encontrar migraciones, es decir proyectos hechos en Java donde los nuevos desarrollos se hacen en Kotlin pero mantienen el código antiguo o legacy code en Java para ir migrándolo poco a poco. En situaciones como esa te pedirán posiblemente que sepas manejar con soltura pero que tengas conocimientos básicos de Java por si hay que hacer algún fix o tocar algo del código de Java.

Simplicidad

Kotlin es muy similar a Swift, que es el lenguaje que actualmente se usa en iOS (antes se usaba Objective C) y que sean tan parecidos no es casualidad ya que la sintaxis de ambos lenguajes permiten una lectura lo más simple del código a diferencia de sus antecesores. 

También Kotlin al estar creado con la idea de que se usaría en Android nos simplifica muchas partes del código como por ejemplo la creación de los POJOS, es decir, nuestros modelos de datos.

Java

public class Dog implements Serializable {
 
private String name;
private int age;
private String breed;
private String color;
 
public Audio(String name, int age, String breed, String color) {
    this.name = name;
    this.age = age;
    this.breed = breed;
    this.color = color;
}
 
public String getName() {
    return name;
}
 
public int getAge() {
    return age;
}
 
public String getBreed() {
    return breed;
}
 
public String getColor() {
    return color;
}
}{codeBox}

Kotlin

Data class Dog(val name:String, val age:Int, val breed:String, val color:String) : Serializable {codeBox}

Con básicamente una única línea de código tenemos lo mismo que en Java. Estas son las cosas por las que se recomienda usar Kotlin ya que está más enfocado a Android que Java.

Conclusiones

Si después de todo esto no lo tienes claro te dejo mi opinión personal. Si ya estás aprendiendo Java sigue con ello y perfecciónalo, no te va a venir mal y te dará una base sólida para que si en el futuro tienes que migrar a Kotlin sea lo más sencillo posible. Si por el contrario quieres empezar desde 0 a desarrollar apps en Android mi recomendación es que vayas directamente a Kotlin.
Artículo Anterior Artículo Siguiente