Вы должны кодировать его в Java, если вы хотите переносимости.Java работает на всех настольных ОС, которые имеют значение.
C #, на мой взгляд, является лучшим кандидатом, если ваше приложение должно быть только для Windows.С графическим редактором работать легче, чем с нуля, скажем, на Swing.
Objective-C - это вещь Apple, и вместе с Qt / C ++ она теоретически переносима, но вы все равно будете иметьпробиться сквозь ошибки и потенциальные утечки памяти.Java не требует никаких изменений исходного кода для работы, скажем, на Linux или Mac, даже если вы пишете код только для Windows.
Наиболее привлекательной особенностью Javas являются инструменты, которые вы можете использовать, не говоря уже о библиотеках практически для чего угодно.Вы получаете большую свободу в выборе инструментов.Если вам нравится Qt, вы также можете найти для него java-привязки, я вспоминаю, что он называется Qt / Jambi.
В качестве альтернативы вы можете кодировать бэкэнд в C ++ / Mono / Objective-C и сделать внешний интерфейс в java.Таким образом, по крайней мере, ваш графический интерфейс легко переносится.