Java vs Kotlin en android: diferencias

Puede que Java siga siendo el primer lenguaje de programación que se te venga a la mente cuando pienses en Android, pero no tienes que usar Java para el desarrollo de Android. De hecho, Kotlin es ahora el idioma oficial preferido de Google para desarrollar sobre Android.

Kotlin vs Java, si compara una clase de Kotlin y una clase de Java que realizan el mismo trabajo, la clase de Kotlin será mucho más concisa, pero hay un área en particular donde Kotlin puede reducir seriamente la cantidad de código repetitivo que necesita escribir: findViewByIds .

Las extensiones de Android de Kotlin le permiten importar una referencia a una vista en su actividad, momento en el que podrá trabajar con esa vista como si fuera parte de la actividad. ¿El resultado? ¡Nunca más tendrá que escribir otro método findViewById!

Antes de poder usar estas extensiones, deberá agregar un complemento adicional a su archivo build.gradle a nivel de módulo (aplique el complemento: ‘kotlin-android-extensions’), después de eso estará listo para comenzar a importar Vistas, para ejemplo, si su archivo activity_main.xml contenía un TextView con el ID textView, entonces agregaría lo siguiente a su Actividad por ejemplo:

No necesita findViewById: es usado para encontrar la primera vista descendiente con el ID dado.

Java

TextView text = (TextView) findViewById(R.id.textView);
text.setText(«Hello World»);

Kotlin

textView.setText(«Hello World»)

Libre de excepción NullPointerExceptions

Es una gran fuente de decepción para los diseñadores de Java. En Kotlin, todos los tipos no son anulables (incapaces de mantener un valor nulo) de forma predeterminada. Si el código intenta usar o devolver nulo en Kotlin, se muestra un error de tiempo de compilación.

var a: String = «abc»
// cerror de compilacion
a = null

Clase de datos: a menudo creamos clases para contener algunos datos. En tales clases, algunas funciones estándar suelen derivarse de los datos. En Kotlin, este tipo de clase se conoce como clase de datos y se marca como datos.

data class User(val name: String, val age: Int)

Te dejamos una tabla con otras diferencias 😉

CARACTERISTICAKOTLINJAVA
1. Funciones de extensiónYa está disponible en KotlinEn Java, necesitamos crear clase
2. Null SafetyYa está disponible en KotlinNo está disponible en Java
3. Miembros estáticosKotlin no tiene un miembro estático para una claseDisponible en Java
4. String TemplatesSí, hay dos tipos de literales de cadena en KotlinTambién está disponible en Java, pero no admite expresiones como Kotlin
5. WildcardsNo está disponible en KotlinDisponible en Java
6. SmartcastsDisponible en KotlinNo está disponible en Java
7. Sin excepciones marcadasKotlin eliminó las excepciones por completoEs problemático en Java
8. Sobrecarga del operadorKotlin permite a los usuarios proporcionar una forma de invocar funcionesLos operadores están vinculados a tipos particulares de Java
9. ConstructoresTiene constructor primario y constructor secundario.Los constructores se pueden usar para tomar parámetros para inicializar atributos
10. Type SystemOfrece soporte de nulabilidad.Existen otros tipos de tipos de referencia relacionados con el concepto básico de clase.

Te invitamos a ver nuestras soluciones en Plusbits soobre software a la medida

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *