Si eres desarrollador en Android, has subido aplicaciones a Google Play (o tienes planeado hacerlo), seguramente habrás escogido Android como base para tus aplicaciones por ser el sistema operativo móvil más extendido en el mundo. O, tal vez, porque se te da mejor programar en JAVA que en otros lenguajes. Sea cual fuere la razón, te habrás planteado más de una vez el portar tus aplicaciones a otros sistemas. Como por ejemplo, iOS. El problema, es que iOS está programado en un lenguaje distinto (Objective-C) y es por ello que puede suponernos más de un quebradero de cabeza el poder llevar nuestro trabajo a un nuevo SO móvil.
Existen varias herramientas que pueden ayudarnos en este proceso, aunque cada una nos proporciona un resultado distinto. Dado que JAVA y Objective-C son dos mundos totalmente distintos, portar una idea o aplicación de uno a otro puede ser un viaje bastante largo. De hecho, puede llevarnos muchísimo tiempo.
Google parece que ha pensado en ello y ha creado una herramienta que nos permitirá ahorrar unas buenas horas programando. J2ObjC, convertirá nuestras clases de JAVA en clases de Objective-C, utilizando directamente el Framework de iOS Fundation. Esencialmente, lo que nos permite esta herramienta es que el código JAVA pase a ser una parte de la aplicación iOS.
En palabras de Google:
J2ObjC is an open-source command-line tool from Google that translates Java code to Objective-C for the iOS (iPhone/iPad) platform. This tool enables Java code to be part of an iOS application’s build, as no editing of the generated files is necessary. The goal is to write an app’s non-UI code (such as data access, or application logic) in Java, which is then shared by web apps (using GWT), Android apps, and iOS apps.
En español:
J2ObjC es una herramienta de lineas de comando, de código abierto, que traduce el código JAVA a la plataforma Objective-C de iOS (iPhone/iPad). Esta herramienta permite a JAVA formar parte de una aplicación de iOS, no es necesario editar ningún archivo generado. El objetivo es escribir una aplicación sin código UI (como el acceso de datos o la lógica de la aplicación) en JAVA, que luego es compartida mediante aplicaciones web (usando GWT), aplicaciones Android y aplicaciones iOS.
Esta herramienta es compatible con la mayoría de características del lenguaje JAVA, pero no está garantizado su funcionamiento con todas las posibilidades que JAVA ofrece. La herramienta no nos provee de una interfaz completa para programar una UI en iOS. Ésto nos obliga a usar el código de UI de usuario nativo de iOS. Aún así, es una gran noticia para los desarrolladores que no se atreven a dar el salto definitivo para hacer sus aplicaciones multiplataforma.
Está visto que a Google le da igual ayudar a sus desarrolladores Android a hacer que sus aplicaciones sirvan también en iOS. Es un gran paso que augura (espero) que muchos intenten que sus aplicaciones se hagan multiplataforma. Aunque queda aún el que se pueda hacer del revés (traer apps de iOS a Android), no creo que quede mucho por salir algo parecido pero a la inversa. Android ha ido ganando en aplicaciones y hasta hace poco (y aún ahora, pero en menor medida) poníamos el grito en el cielo por tener aplicaciones de la AppStore. Ahora, son ellos los que desean aplicaciones de Android. Sin duda, los programadores androides deberían pensarse dos veces el hacer que sus creaciones figuren en la tienda de Apple.
Si necesitas más información al respecto, visita el enlace de la fuente.
¿Qué te parece esta noticia? ¡Cuéntanos tu opinión en los comentarios!
fuente: J2ObjC