Cómo convertir Java en Kotlin y Kotlin a Java

Cómo convertir Java en Kotlin y Kotlin a Java
Este artículo cubrirá una guía sobre la conversión del código escrito en el lenguaje de programación de Kotlin al lenguaje de programación Java y viceversa. Kotlin es un lenguaje de programación relativamente nuevo desarrollado por JetBrains y es totalmente interoperable con el lenguaje de programación Java. Ofrece algunos beneficios sobre el lenguaje de programación Java como una sintaxis más concisa, funciones de ayuda más incorporadas, verificación de tipo nulo más estricta, clases de datos, etc. Lista completa de diferencias entre estos dos idiomas está disponible aquí. Kotlin es ahora el lenguaje preferido para desarrollar aplicaciones de Android y se ha integrado completamente en Android Studio App Development Software Suite.

Puedes convertir Kotlin en Java y Java a Kotlin usando herramientas fuera de línea. Algunos de ellos se explican en este artículo. Tenga en cuenta que, dependiendo del código que se convierta y el tipo de herramienta que se utiliza para el propósito de conversión, el código convertido puede no ser 100% preciso y es posible que tenga que hacer algunas ediciones manuales. Siempre debe revisar el código convertido antes de usarlo en una aplicación.

Convertir Kotlin a Java usando el software IntelliJ IDE y Android Studio

Puede usar Android Studio App Development Software Suite para convertir el código Kotlin en Java. Android Studio se puede descargar desde aquí. Después de descargar, inicie Android Studio y cree un nuevo proyecto de aplicación Kotlin de acuerdo con sus requisitos. También puede importar sus proyectos Kotlin existentes a Android Studio.

Con un ".Archivo KT ”Abierto en Android Studio Editor, haga clic en Herramientas> Kotlin> Show Kotlin Bytecode Entrada del menú (como se muestra en la captura de pantalla a continuación).

Obtendrá Kotlin Bytecode en una subventana separada una vez que termine el proceso.

Haga clic en el botón "Descompilar" en la misma ventana para convertir el código en Java.

Obtendrá un nuevo archivo con el mismo nombre pero con un ".extensión de Java "en lugar del original".extensión de KT ”. Este archivo contendrá el código Java convertido y tendrá una palabra clave "descompilada" en su nombre de archivo.

También puede usar IntelliJ IDE, un conjunto de software de código abierto y comercial para desarrollar aplicaciones en Java y Kotlin, para convertir el código Kotlin en Java. Los pasos para convertir Kotlin a Java son los mismos que anteriores, ya que Android Studio se basa en el software IntelliJ IDE. Puede descargar el software IntelliJ IDE desde su sitio web oficial.

Convertir Java a Kotlin utilizando el software IntelliJ IDE y Android Studio

Puede usar el software Android Studio y IntelliJ IDE para convertir el código Java en Kotlin. Si está utilizando un proyecto basado en Kotlin en Android Studio o el software IntelliJ IDE e intente copiar/pegar el código Java, debe obtener una solicitud para convertir automáticamente el código Java en Kotlin (como se muestra en la captura de pantalla a continuación).

Otro método es crear un ".Archivo Java "dentro del directorio de su proyecto o agregue un existente".Archivo Java "en su proyecto y luego Convertir el código contenido en todo el archivo en kotlin. Para hacerlo, abra un ".Archivo Java ”ubicado en la carpeta de su proyecto en Android Studio Editor y haga clic en Código> Convertir el archivo Java en la entrada del menú del archivo Kotlin (como se muestra en la captura de pantalla a continuación).

Una vez que haya terminado el proceso de conversión, obtendrá un nuevo ".archivo kt "con el mismo nombre y el original".El archivo Java "se eliminará de la carpeta del proyecto.

Como se dijo anteriormente, estos pasos también deberían funcionar con el software IntelliJ IDE.

Convertir Kotlin a Java usando la utilidad de la línea de comandos de Fernflower

Tanto Android Studio como el software IntelliJ IDE utilizan una biblioteca Java y una utilidad de línea de comandos debajo para convertir el código Kotlin en Java. Esta utilidad se llama "Fernflower" y se puede compilar a partir de su código fuente disponible aquí utilizando la herramienta de compilación de Gradle. Obtendrás un "Fernflower.archivo jar "una vez que el proceso de compilación se completa con éxito. Esta herramienta de línea de comandos también está disponible en archivos descargables de Android Studio y software IntelliJ IDE en la carpeta "Plugins/Java-Decompiler/Lib/" y se llama "Java-Decompiler.frasco".

Para convertir un ".archivo KT "utilizando" Fernflower.Jar "o" Java-Decompiler.Archivos JAR ", primero deberá compilarlo a un".Archivo de clase "usando el compilador Kotlin. El compilador oficial de línea de comandos de Kotlin se puede instalar en Linux siguiendo instrucciones disponibles aquí. Una vez que tenga el compilador de línea de comandos de Kotlin o "Kotlinc" instalado en su sistema Linux, ejecute un comando en el siguiente formato para convertir una "prueba.Archivo KT "a" Testkt.archivo de clase ".

Prueba de $ kotlinc.kt

Dependiendo del nombre del ".Archivo KT ", Kotlinc asignará automáticamente un nombre adecuado al".archivo de clase ". Ahora puedes convertir ".archivo de clase "a".Archivo Java "utilizando uno de los siguientes dos comandos:

$ Java -jar Fernflower.jar testkt.clase .
$ Java -CP Java -Decompiler.organización.rejilla.Java.descomitador.principal.descomitador.Consoledecompiler testkt.clase .

El descompilador puede tardar un tiempo en convertir el código dependiendo de la complejidad y la escala de su programa. Una vez que se termina el proceso de descompilación, debe obtener un ".Archivo Java "(Testkt.Archivo Java en este caso) que contiene código convertido en Java.

Conclusión

Dado que Kotlin se convirtió en el lenguaje preferido para desarrollar aplicaciones de Android, su adopción ha aumentado considerablemente. Los desarrolladores de aplicaciones pueden querer convertir el código Java en Kotlin para mantener su aplicación actualizada. Las herramientas integradas en Android Studio y el software IntelliJ IDE les permiten convertir el código en ambos sentidos y facilita la convertir el código sin mucha entrada manual.