Jak wyżej naprawdę
W wolnym czasie piszę grę na Androida (Android, ponieważ jest darmowa i nie mam prawdziwych aspiracji do robienia czegoś komercyjnego).
Logika gry wywodzi się z bardzo typowego modelu opartego na komponentach, w którym byty istnieją i mają dołączone do nich komponenty, a komunikaty są wysyłane tam i z powrotem, aby wszystko się stało.
Oczywiście warstwa, która faktycznie działa, jest cienka, a gdybym miał napisać wersję tej aplikacji na iPhone'a, musiałbym ponownie napisać mechanizm renderujący i sterownik rdzenia (tego systemu opartego na komponentach) w Celu C.
Jednostki są tylko płaskimi plikami określającymi nazwy komponentów, które mają zostać dodane, a same komponenty są prostymi, jednocelowymi obiektami zawierającymi logikę encji.
Teraz, jeśli napiszę całą logikę dla tych komponentów w Javie, to musiałbym ponownie napisać je w Celu C, jeśli zdecyduję się na port iPhone. Ponieważ większość logiki aplikacji jest zawarta w tych komponentach, w idealnym świecie zostałyby napisane w jakimś niezależnym od platformy języku / skrypcie / DSL, który można by po prostu załadować do aplikacji na dowolnej platformie.
Zostałem jednak przekonany, że nie jest to idealny świat i że wydajność Lua itp. Na urządzeniach mobilnych wciąż nie jest do zera, że narzut jest zbyt duży i że później wpadłbym w kłopoty poszedł tą drogą?
Czy tak jest w rzeczywistości? Oczywiście jest to tylko hipotetyczne pytanie, z przyjemnością piszę je wszystkie w Javie, ponieważ jest to proste i łatwe, ale mogę powiedzieć, że naprawdę lubię tworzyć tę grę (mało prawdopodobne, biorąc pod uwagę, jak bardzo nie lubię, że muszę sobie z tym poradzić) z tymi wszystkimi różnymi urządzeniami mobilnymi) i chciałem stworzyć komercyjnie opłacalną grę - czy użyłbym Lua, czy po prostu skorzystałbym z możliwości przeniesienia i przepisał cały kod?