Si vous êtes un développeur d'applications qui a créé applications pour Android et mettez-les sur Google Play, vous avez sans doute vu l'avantage de créer des applications pour le plus grand OS mobile. Peut-être aimeriez-vous « partager l'amour » avec les utilisateurs de cet autre système d'exploitation mobile, mais vous n'êtes pas familier avec Objective-C, vous avez donc choisi de vous en éloigner.
Il existe de nombreux outils pour vous aider à convertir JAVA en Objective-C, avec des résultats différents. Étant donné que JAVA et Objective-C sont presque des mondes différents, essayer de porter ou de convertir peut prendre du temps, car vous devrez passer au crible le bytecode et la sortie d'erreur. Google a cependant créé un outil, appelé J2ObjC, qui convertira vos classes JAVA en classes Objective-C, utilisant ainsi directement le framework iOS Foundation. Essentiellement, l'outil permet au code JAVA de faire partie d'une application iOS.
Voici ce qu'ils ont à dire à ce sujet :
J2ObjC est un outil de ligne de commande open source de Google qui traduit le code Java en Objective-C pour le
IOS (iPhone/iPad). Cet outil permet au code Java de faire partie de la construction d'une application iOS, car aucune modification des fichiers générés n'est nécessaire. L'objectif est d'écrire le code non-UI d'une application (tel que l'accès aux données ou la logique de l'application) en Java, qui est ensuite partagé par les applications Web (à l'aide de GWT), Android applications et applications iOS.
L'outil prend en charge la plupart des fonctionnalités du langage et du runtime JAVA, mais il n'est pas garanti qu'il fonctionne avec toutes les manières possibles d'utiliser JAVA. L'outil ne fournit pas au développeur une boîte à outils d'interface utilisateur indépendante de la plate-forme, vous devrez donc toujours utilisez le code natif de l'interface utilisateur iOS, mais c'est une étape importante pour les développeurs qui cherchent à créer des applications multiplateformes applications. Assurez-vous de visiter le page du projet pour plus d’informations sur l’utilisation de l’outil.