Un plan para llevar Java a iOS

Una propuesta que flota en la comunidad OpenJDK busca impulsar Java en el iOS de Apple. El plan implica reiniciar el trabajo en el proyecto OpenJDK Mobile, que está destinado a construir las clases y API OpenJDK para iOS y Android, dijo Johan Vos, CTO del desarrollador móvil Gluon.

Vos publicó recientemente un boletín relacionado con estos esfuerzos. OpenJDK Mobile se centra en proporcionar las mismas API en la última versión del repositorio de origen de OpenJDK para iOS y Android, aprovechando las herramientas familiares para los desarrolladores de Java. Sin embargo, el primer enfoque está en iOS, que ha carecido del soporte tradicional para Java. Apple no ha permitido que Java Virtual Machine se ejecute en la plataforma.

El nuevo plan para OpenJDK Mobile implicaría usar el compilador de GraalVM con anticipación para compilar el código en el momento de la compilación. (Vos señaló que la compilación justo a tiempo no es una opción en iOS). El código Java compilado podría vincularse con bibliotecas nativas compiladas para que el sistema operativo de destino cree ejecutables. Esto ya se ha hecho para iOS, basado en Java 11. Con las clases GraalVM Native Images y OpenJDK, los desarrolladores pueden crear aplicaciones que sigan las reglas de Apple. Los desarrolladores de Java no tendrían que aprender Objective-C o Swift para escribir software para iOS.

“Si bien Java puede llegar tarde en el juego en dispositivos móviles, el hecho de que sea multiplataforma, creado con la seguridad como piedra angular y que permita una conectividad segura con servicios en la nube, lo convierte en un lenguaje realmente serio para el desarrollo móvil —Dijo Vos.

Java se ha utilizado para el desarrollo de Android desde el principio. Sin embargo, Android no es compatible con Java 11 y requiere su propia herramienta de desarrollo, Android Studio, y procedimientos, dijo Vos. Muchos desarrolladores enfrentan serios problemas al usar proyectos y bibliotecas de Java en Android, dijo.

También parte del plan es una bifurcación sincronizada del maestro OpenJDK, que se crearía usando Project Skara. Se aprovecharía un repositorio basado en Skara para construir OpenJDK para iOS y Android.

Llevar Java a iOS ha sido el objetivo de varios proyectos en la última década. Otros esfuerzos incluyeron el propio complemento Eclipse de Gluon y la ahora desaparecida herramienta RoboVM.