Comme ci-dessus vraiment,
J'écris un jeu basé sur Android pendant mon temps libre (android parce que c'est gratuit et que je n'ai aucune aspiration réelle à faire de la publicité).
La logique de jeu découle d'un modèle très typique basé sur des composants, dans lequel des entités sont associées à des composants et des messages sont envoyés pour faire avancer les choses.
Il est évident que la couche utilisée pour effectuer cette tâche est mince et que si je devais écrire une version iPhone de cette application, je devrais réécrire le moteur de rendu et le pilote principal (du système à base de ce composant) dans Objective C.
Les entités ne sont que des fichiers plats déterminant les noms des composants à ajouter, et les composants eux-mêmes sont de simples objets à usage unique contenant la logique de l'entité.
Maintenant, si j'écris toute la logique de ces composants en Java, je devrais les réécrire sur Objective C si je décidais de faire un port iPhone. Comme la majeure partie de la logique de l'application est contenue dans ces composants, ils seraient, dans un monde idéal, écrits dans un langage / script / DSL indépendant de la plate-forme, qui pourrait ensuite simplement être chargé dans l'application, sur n'importe quelle plate-forme.
J'ai été amené à croire cependant que le monde n'est pas idéal et que les performances de Lua, etc. sur les appareils mobiles ne sont toujours pas à la hauteur, que les frais généraux sont trop importants et que j'aurais des problèmes plus tard si je est allé dans cette voie?
Est-ce vraiment le cas? Évidemment, il s’agit là d’une question hypothétique. Je suis heureux de pouvoir les écrire tous en Java, car c’est simple et facile de faire décoller les choses, mais je me plais à faire ce jeu (improbable, vu à quel point je n’aime pas avoir à traiter avec tous ces différents appareils mobiles) et je voulais créer un jeu commercialement viable - utiliserais-je Lua ou prendrais-je juste le bon coup en ce qui concerne le portage et réécrire tout le code?