Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Cómo comenzar a usar Kotlin en Android

Gracias a que Android Studio es totalmente compatible con Kotlin, podrás crear proyectos nuevos con archivos Kotlin, agregar archivos Kotlin a tu proyecto existente y convertir código de lenguaje Java en Kotlin. Podrás usar todas las herramientas existentes de Android Studio con tu código Kotlin, como completar el código, la comprobación de lint, la refactorización, la depuración y mucho más.

¿No conoces el lenguaje Kotlin? Consulta estos vínculos:

  • Aprende el lenguaje Kotlin: Un curso intensivo de 30 minutos sobre conceptos básicos de Kotlin.
  • Muestras de Kotlin: Una biblioteca en crecimiento de apps de muestra para Android escritas en Kotlin.
  • Recursos adicionales de Kotlin: Este conjunto de recursos seleccionados aborda todos los aspectos de Kotlin, lo que incluye muestras, codelabs, videos, libros y mucho más.

Cómo agregar Kotlin a una app existente

Para adquirir habilidades y confianza a la hora de usar Kotlin, te recomendamos adoptar el siguiente enfoque:

  1. Comienza por escribir pruebas en Kotlin, ya que son útiles para verificar la regresión del código y generan un nivel de confianza a la hora de reestructurarlo. Las pruebas son muy útiles para convertir código Java existente en Kotlin. Dado que no se incluyen en la app durante el empaquetado, son una forma segura de agregar Kotlin a la base de código.
  2. Escribe código nuevo en Kotlin. Antes de convertir código Java existente en Kotlin, intenta agregar pequeñas partes de código Kotlin nuevo en tu app. Comienza con una función de ayuda pequeña o de nivel superior. Asegúrate de agregar anotaciones pertinentes al código Kotlin para garantizar una interoperabilidad adecuada con el código Java.
  3. Actualiza el código existente a Kotlin. Una vez que sientas confianza para escribir uno nuevo, convierte el código Java a Kotlin. Extrae pequeñas partes de la funcionalidad de Java y conviértelas en clases de Kotlin y funciones de nivel superior.

Android Studio también incluye un convertidor de códigos, que convierte el código de un archivo Java en Kotlin. También puedes convertir el código Java pegado desde el portapapeles en un archivo Kotlin.

Ejemplos de Kotlin y API de Android

Como Kotlin brinda interoperabilidad completa con el lenguaje Java, realizar llamadas a las API de Android suele verse como el código de Java correspondiente, salvo que ahora puedes combinar esas llamadas de método con las funciones de sintaxis de Kotlin.

Muchas API de Android están disponibles con referencias idiomáticas de Kotlin. Para obtener más información, consulta la guía de KTX y la documentación de referencia de Kotlin en Android.

A continuación, se muestran algunos ejemplos de cómo se ven las llamadas a la API de Android en Kotlin, en comparación con el mismo código en lenguaje Java:

Cuando se declara una actividad

Kotlin

class MyActivity : AppCompatActivity() {
  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity)
  }
}

Java

public class MyActivity extends AppCompatActivity {
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity);
  }
}

Cuando se crea un objeto de escucha con un clic

Kotlin

val fab = findViewById(R.id.fab) as FloatingActionButton
fab.setOnClickListener {
  ...
}

Java

FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
  @Override
  public void onClick(View view) {
    ...
  }
});

Cuando se crea un objeto de escucha para hacer clic en un elemento

Kotlin

private val onNavigationItemSelectedListener
    = BottomNavigationView.OnNavigationItemSelectedListener { item ->
  when (item.itemId) {
    R.id.navigation_home -> {
      textMessage.setText(R.string.title_home)
      return@OnNavigationItemSelectedListener true
    }
    R.id.navigation_dashboard -> {
      textMessage.setText(R.string.title_dashboard)
      return@OnNavigationItemSelectedListener true
    }
 }
 false
}

Java

private BottomNavigationView.OnNavigationItemSelectedListener onNavigationItemSelectedListener
    = new BottomNavigationView.OnNavigationItemSelectedListener() {
  @Override
  public boolean onNavigationItemSelected(@NonNull MenuItem item) {
    switch (item.getItemId()) {
      case R.id.navigation_home:
        textMessage.setText(R.string.title_home);
        return true;
      case R.id.navigation_dashboard:
        textMessage.setText(R.string.title_dashboard);
        return true;
    }
    return false;
  }
};

Prácticas recomendadas

A medida que te familiarices con Kotlin, intenta seguir estos lineamientos:

  • Prioriza la legibilidad antes que minimizar las líneas del código. Es fácil extenderse cuando se escribe con la sintaxis edulcorada de Kotlin.
  • Es una buena idea establecer convenciones y modismos de codificación que funcionen mejor para tu equipo. Las guías de estilo de Kotlin y Android Kotlin ofrecen sugerencias sobre cómo darle formato al código Kotlin.