Crea tu proyecto Android con Kotlin desde cero (KDA 01)
Antonio Leiva

Hoy inicio un nuevo reto: 30 artículos de Kotlin para Desarrolladores Android (de ahí lo del KDA) en 30 días.

Si quieres empezar hoy, te recomiendo que le eches un vistazo a mi training gratuito, donde tendrás una hora y media de contenido para saber cuáles son tus siguientes pasos a dar para convertirte en un experto en Kotlin.

Training Revienta tu productividad en Android con Kotlin

En el artículo de hoy, te quiero enseñar lo fácil que es crear un proyecto desde cero.

Creando un proyecto Kotlin para Android desde cero

Lo primero que te voy a pedir es que tengas descargada la última versión estable de Android Studio.

Una vez hecho esto, vas a necesitar instalarte el plugin de Kotlin. Aunque en IntelliJ viene instalado por defecto, en Android Studio lo vas a necesitar instalar aparte.

1. Instala el plugin de Kotlin

Para ello, ve a la sección de plugins en “Preferences” (o “Settings” según tu sistema operativo), y utiliza el buscador para encontrarlo:

Plugin Kotlin Android Studio

2. Crea un proyecto en Android

Ahora que ya tienes el plugin instalado (puedes incluso hacerlo después si quieres), crea un proyecto en Android.

Nada especial, simplemente créalo como lo harías con cualquier otra App de Android:

proyecto-kotlin-android

Si quieres elige “Blank Screen” entre las opciones, para que luego te sea más sencillo convertir el código.

3. Convierte la Activity creada a código Kotlin

Esto es tan fácil como seleccionar una opción en un menú. Literalmente.

El plugin de Kotlin incluye un conversor de código de Java a Kotlin (no a la inversa, pero ¿para qué lo quieres? ?). No tienes más que posicionarte en la clase que quieres transformar y elegir la opción Code -> Convert Java File to Kotlin File:

Y eso es todo. Aquí tienes el resultado de la operación:

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

Como ves, aunque hay algunas similitudes con Java, hay muchas otras diferencias. Algunas de ellas las iremos viendo en los siguientes artículos.

4. Convierte el proyecto a un proyecto Kotlin

Nuevamente, otra utilidad nos permitirá hacer esto. Sólo tenemos que ir a Tools -> Kotlin -> Configure Kotlin in Project, y utilizar el diálogo para que modifique los build.gradle por nosotros:

dialogo-configuracion-kotlin-android

¿Qué ha hecho esto? Verás que ha añadido una dependencia al plugin de Kotlin:

dependencies {
    classpath 'com.android.tools.build:gradle:2.2.0'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}

Y una referencia al plugin de Kotlin en el build.gradle hijo:

apply plugin: 'kotlin-android'

Así como a la librería:

dependencies {
    ...
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}

Conclusión

¡Y esto es todo! Ya puedes ejecutar el proyecto y ver cómo todo funciona perfectamente.

La compilación tardará un poco más que con Java (pero muy poco) la primera vez y, según este artículo, el resto de compilaciones serán incluso más rápidas que con Java.

Genial, ¿verdad? Si quieres aprenderlo todo sobre Kotlin, apúntate a mi training gratuito, donde te contaré todo lo que necesitas para aprender a crear tus Apps Android en Kotlin desde cero.

Cuéntame en los comentarios qué te ha parecido este artículo, así como la iniciativa. ¡Gracias!

Quizá también te interese…

2 formas de recolectar Flows en la UI que SÍ funcionan

2 formas de recolectar Flows en la UI que SÍ funcionan

En la serie de artículos sobre Programación Reactiva con Flow hemos visto muchos conceptos, y hemos aprendido cómo aplicarlos al desarrollo Android. Pero hay algo que no hemos hecho del todo bien. Esto es la recolección de Flows desde la Activity (o el Fragment, en...

Cómo hacer tests de Corrutinas y Flows – Paso a Paso

Cómo hacer tests de Corrutinas y Flows – Paso a Paso

¡Vaya viaje por el que hemos pasado en estos artículos! Hace ya varios de ellos empezamos hablando sobre la programación reactiva con Flow, y hemos aprendido un montón de conceptos e ideas sobre cómo aplicarlos en el día a día. Pero nada de esto está completo si no...

Convertir cualquier callback en un Flow con CallbackFlow

Convertir cualquier callback en un Flow con CallbackFlow

Existen varios tipos de Flows muy particulares que nos van a solucionar la vida cuando tengamos que hacer cosas muy concretas. Ya vimos StateFlow en un artículo anterior, y en esta ocasión hablamos de CallbackFlow ¿Qué es CallbackFlow? Es un tipo de Flow que nos...