Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En Google I/O 2019, anunciamos que el desarrollo de Android estaría cada vez más orientado a Kotlin. Seguimos manteniendo ese compromiso. Kotlin es un lenguaje de programación expresivo y conciso que permite reducir los errores de código comunes y se integra fácilmente en las apps existentes. Si quieres crear una app para Android, te recomendamos que comiences con Kotlin para aprovechar sus mejores funciones.
Para apoyar el desarrollo de Android con Kotlin, cofundamos Kotlin Foundation y hacemos inversiones con el objetivo de mejorar el rendimiento del compilador y la velocidad de compilación. Para obtener más información sobre el compromiso que asumió Android para darle prioridad a Kotlin, consulta Compromiso de Android con Kotlin.
¿Por qué Kotlin tiene prioridad en el desarrollo de Android?
Revisamos los comentarios que provienen directamente de los desarrolladores que asisten a las conferencias, de nuestro Consejo Asesor de Clientes (CAB) y de los Expertos de Google Developers (GDE), así como nuestra investigación para desarrolladores. Muchos desarrolladores ya disfrutan de usar Kotlin, y la solicitud para obtener más asistencia para Kotlin fue clara. Esto es lo que los desarrolladores valoran de escribir en Kotlin:
Expresivo y conciso: Puedes hacer más con menos. Expresa tus ideas y reduce la cantidad de código estándar. El 67% de los desarrolladores profesionales que usan Kotlin afirman que aumentó su productividad.
Código más seguro: Kotlin cuenta con muchas funciones de lenguaje que te ayudarán a evitar errores de programación comunes, como excepciones de puntero nulo.
Las apps para Android que contienen código de Kotlin tienen un 20% menos de probabilidades de fallar.
Interoperable: Puedes llamar al código basado en Java desde Kotlin o viceversa. Kotlin es 100% interoperable con el lenguaje de programación Java, por lo que puedes implementar Kotlin en tus proyectos de la forma que quieras.
Simultaneidad estructurada: Las corrutinas de Kotlin hacen que sea tan fácil trabajar con código asíncrono como con código de bloqueo. Las corrutinas simplifican en gran medida la administración de tareas en segundo plano para todo, desde las llamadas de red hasta el acceso a los datos locales.
¿Qué significa que Kotlin tenga prioridad?
Cuando creamos nuevas herramientas y contenido de desarrollo de Android, como bibliotecas de Jetpack, muestras, documentación y contenido de capacitación, los diseñamos teniendo en cuenta a los usuarios de Kotlin y manteniendo la compatibilidad con nuestras APIs del lenguaje de programación Java.
Lenguaje Java
Kotlin
Compatibilidad con el SDK de la plataforma
Sí
Sí
Compatibilidad con Android Studio
Sí
Sí
Lint
Sí
Sí
Compatibilidad con documentos guiados
Sí
Sí
Compatibilidad con documentos de API
Sí
Sí
Compatibilidad con AndroidX
Sí
Sí
APIs específicas de AndroidX Kotlin (KTX, corrutinas, etcétera)
Nuestros ingenieros disfrutan de las funciones del lenguaje que ofrece Kotlin. Actualmente, más de 70 apps de Google se compilan con Kotlin. Algunos ejemplos son Maps, Home, Play, Drive y Mensajes. Un ejemplo de éxito es el del equipo de Google Home, en el que la migración de un nuevo desarrollo de funciones a Kotlin redujo en un 33% en el tamaño de la base de código y en un 30% la cantidad de fallas de NPE.
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-07-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-07-27 (UTC)"],[],[],null,["# Android’s Kotlin-first approach\n\nAt Google I/O 2019, we announced that Android development will be\nincreasingly Kotlin-first, and we've stood by that commitment. Kotlin is an\nexpressive and concise programming language that reduces common code errors\nand easily integrates into existing apps. If you're looking to build an\nAndroid app, we recommend starting with Kotlin to take advantage of its\nbest-in-class features.\n\nIn an effort to support Android development using Kotlin, we co-founded the\n[Kotlin Foundation](https://kotlinlang.org/foundation/kotlin-foundation.html)\nand have ongoing investments in improving compiler performance and build\nspeed. To learn more about Android's commitment to being Kotlin-first, see\n[Android's commitment to Kotlin](https://android-developers.googleblog.com/2019/12/androids-commitment-to-kotlin.html).\n\nWhy is Android development Kotlin-first?\n----------------------------------------\n\nWe reviewed feedback that came directly from developers at conferences, our\nCustomer Advisory Board (CAB), Google Developer Experts (GDE), and through\nour developer research. Many developers already enjoy using Kotlin, and the\nrequest for more Kotlin support was clear. Here's what developers appreciate\nabout writing in Kotlin:\n\n- **Expressive and concise:** You can do more with less. Express your ideas and reduce the amount of boilerplate code. 67% of professional developers who use Kotlin say Kotlin has increased their productivity.\n- **Safer code:** Kotlin has many language features to help you avoid common programming mistakes such as null pointer exceptions. Android apps that contain Kotlin code are 20% less likely to crash.\n- **Interoperable:** Call Java-based code from Kotlin, or call Kotlin from Java-based code. Kotlin is 100% interoperable with the Java programming language, so you can have as little or as much of Kotlin in your project as you want.\n- **Structured Concurrency:** Kotlin coroutines make asynchronous code as easy to work with as blocking code. Coroutines dramatically simplify background task management for everything from network calls to accessing local data.\n\nWhat does Kotlin-first mean?\n----------------------------\n\nWhen building new Android development tools and content, such as Jetpack\nlibraries, samples, documentation, and training content, we will design\nthem with Kotlin users in mind while continuing to provide support for\nusing our APIs from the Java programming language.\n\n| | Java language | Kotlin |\n|------------------------------------------------------------|---------------|----------------------------------------------------------------------------------------------------------------------------------------|\n| Platform SDK support | Yes | Yes |\n| Android Studio support | Yes | Yes |\n| Lint | Yes | Yes |\n| Guided docs support | Yes | Yes |\n| API docs support | Yes | Yes |\n| AndroidX support | Yes | Yes |\n| AndroidX Kotlin-specific APIs (KTX, coroutines, and so on) | N/A | Yes |\n| Online training | Best effort | Yes |\n| Samples | Best effort | Yes |\n| Multi-platform projects | No | Yes |\n| Jetpack Compose | No | Yes |\n| Compiler plugin support | No | Yes - The [Kotlin Symbol Processing API](https://github.com/google/ksp) was created by Google to develop lightweight compiler plugins. |\n\nWe use Kotlin, too!\n-------------------\n\nOur engineers enjoy the language features Kotlin offers, and today over 70 of\nGoogle's apps are built using Kotlin. This includes apps like Maps, Home, Play,\nDrive, and Messages. One example of success comes from the\n[Google Home team](/stories/apps/google-home), where migrating new feature\ndevelopment to Kotlin resulted in a 33% reduction in codebase size and a 30%\nreduction in the number of NPE crashes.\n\nTo learn more about Kotlin on Android, see the\n[Kotlin on Android FAQ](/kotlin/faq)."]]