Preguntas frecuentes sobre Kotlin en Android

¿Por qué Android hizo de Kotlin un lenguaje compatible de primer nivel?

Kotlin es un lenguaje compatible con Android que es conciso y expresivo, y está diseñado para tener seguridad de tipos y contra nulos. Funciona sin inconvenientes con el lenguaje de programación Java, por lo que los desarrolladores que aman este lenguaje pueden seguir usándolo y, al mismo tiempo, agregar de manera incremental el código de Kotlin y aprovechar las bibliotecas. Mientras tanto, muchos desarrolladores de Android descubrieron que Kotlin hace que el desarrollo sea más rápido y divertido, por lo que Google quiere brindar una mejor asistencia a los usuarios de Kotlin. Obtén más información sobre el enfoque de prioridad de Kotlin en Android.

¿Cómo uso Kotlin con Android Studio?

Kotlin es totalmente compatible con Android Studio. Todos los nuevos lanzamientos de Android Studio se envían con compatibilidad para crear proyectos nuevos con archivos Kotlin, la conversión del código de lenguaje Java a Kotlin, la depuración de código Kotlin y mucho más.

¿Cómo depuro Kotlin en Android Studio?

La depuración de Kotlin se lleva a cabo de la misma manera que se hace con el código Java. No tienes que realizar ninguna acción diferente.

¿Qué otros tipos de compatibilidad con IDE se proporcionan para Kotlin (como lint,

autocompletado y refactorizaciones)?

Android Studio es totalmente compatible con las herramientas de Kotlin.

¿Cuál es el futuro de Kotlin?

El cuidadoso trabajo de JetBrains sobre el diseño de Kotlin es una de las razones para adoptar el lenguaje. Google se asoció con JetBrains para garantizar una experiencia de desarrollo fluida, desde el lenguaje hasta el framework y las herramientas. Nos entusiasma trabajar en conjunto para trasladar el lenguaje Kotlin a una fundación sin fines de lucro.

¿Kotlin es de código abierto?

La licencia preferida para Kotlin es la Licencia del software Apache versión 2.0 ("Apache 2.0"), y la mayor parte del software de Kotlin está licenciada en ella. Si bien nos esforzamos para que el proyecto cumpla con la licencia preferida, pueden haber excepciones que se resuelven según cada caso. Por ejemplo, ciertas dependencias de terceros que usan Kotlin cuentan con licencias con códigos abiertos diferentes que todavía son compatibles con Apache 2.0.

¿Cómo elijo entre Java y Kotlin?

No es necesario que elijas. Puede usar los dos. Si necesitas ayuda para saber si Kotlin es la mejor opción, puedes probarlo en Android o consultar estos recursos de Kotlin para obtener más información sobre este lenguaje.

¿Puedo hacer una llamada a Android o a otras API de la biblioteca Java desde Kotlin?

Sí. Kotlin incluye interoperabilidad con Java. Este diseño le permite al código de Kotlin realizar una llamada de manera transparente a los métodos de Java, junto con anotaciones que facilitan la exposición de la funcionalidad específica de Kotlin a Java. A los archivos de Kotlin que no usan semánticas específicas de este lenguaje se les puede hacer referencia directamente desde el código Java sin necesidad de anotaciones. Esta combinación permite mezclar de forma detallada el código Java con Kotlin. Para obtener más información, consulta la documentación sobre la interoperabilidad de Kotlin.

¿Tienen documentos de referencia de Kotlin para las API de Android?

Así es. Google está trabajando para que toda la documentación de la API de Android esté disponible con referencias idiomáticas de Kotlin. Puedes encontrar vínculos a los documentos de referencia de Kotlin disponibles en la página de resumen de la referencia de Android. Si buscas una referencia a los recursos principales de Kotlin, consulta la referencia sobre la biblioteca estándar de este lenguaje.

¿Puedo usar archivos Java y Kotlin en el mismo proyecto?

Sí. Puedes incorporar tanto de Kotlin como quieras y mezclarlo con código Java usando la interoperabilidad de ambos lenguajes.

¿Puedo usar Kotlin con C++?

Sí, JNI es compatible con Kotlin. Marca los métodos de JNI con el modificador externo.

¿Cómo agrego Kotlin a mis proyectos nuevos?

Kotlin ahora es la opción de lenguaje predeterminada en Android Studio cuando se crean proyectos nuevos. Para obtener más información, consulta Cómo crear un proyecto.

¿Cómo agrego Kotlin a mis proyectos existentes?

Selecciona el módulo en la ventana Project y, luego, selecciona File > New. Selecciona cualquier plantilla de Android y, luego, elige Kotlin como Source language. Para obtener más información, consulta Cómo agregar Kotlin a una app existente.

¿Cómo convierto el código Java en Kotlin?

Abre un archivo Java y selecciona Code > Convert Java File to Kotlin File. Como opción, crea un nuevo archivo Kotlin (File > New > Kotlin File/Class) y, luego, pega el código Java en ese archivo. Cuando se te solicite, haz clic en Yes para convertir el código a Kotlin.

¿Habrá documentos, muestras, plantillas y codelabs paralelos en Kotlin?

Estamos trabajando a fin de lograr que la documentación y los materiales educativos sean lo más útiles posible para los usuarios de Java y Kotlin. Mientras tanto, los desarrolladores pueden confiar en la excelente interoperabilidad de ambos lenguajes y la capacidad para traducir automáticamente el código de Java a Kotlin en Android Studio.

¿Las corutinas de Kotlin funcionan en Android? ¿Y las funciones "async/await"?

Las corrutinas de Kotlin son estables a partir de la versión 1.3 de Kotlin y funcionan según lo previsto en Android. Para obtener más información sobre el uso de corrutinas con Android, consulta Cómo mejorar el rendimiento de la app con las corrutinas de Kotlin.

¿Usar Kotlin tiene algún impacto en el rendimiento?

Kotlin no afecta al rendimiento de manera directa, pero al igual que con Java, se debe tener cuidado a la hora de usarlo. Por ejemplo, la copia repetida entre instancias de recopilación nuevas puede afectar el rendimiento de GC, y la realización de llamadas a un método que acepta tipos no nulos agrega una llamada de método para la verificación nula (aunque puedes inhabilitar las verificaciones nulas del tiempo de ejecución en el compilador con -Xno-param-assertions).

¿Cuáles son las versiones de Android compatibles con Kotlin?

Todas. Como Kotlin es compatible con JDK 6, las apps que utilicen este lenguaje podrán ejecutarse de forma segura en las versiones anteriores de Android.

¿Dónde puedo obtener más información sobre el uso de Kotlin?

Consulta los Recursos adicionales para comenzar a usar Kotlin.