Мы хотим написать клиента для онлайн-сервиса, который должен быть доступен на как можно большем количестве платформ.Этот вопрос о том, какой язык программирования и рамки мы должны использовать для создания этого клиента.Требуются следующие платформы: Linux, Mac, Windows, iOS (iPhone, iPod, iPad) и Android.Чем больше, тем лучше.
Для мобильных платформ есть Titanium Mobile .Я еще не пробовал это, веб-сайт говорит, что вы можете разрабатывать для iOS и Android, используя такие веб-навыки, как Javascript.Я пока не знаю, можно ли развернуть для обеих платформ, используя тот же код.Это было бы здорово!
Существует также Titanium Desktop, но мне не нравится идея, что весь исходный код доступен для конечного приложения.Titanium делает это и для мобильных устройств, но изменить приложение, загруженное через App Store, не так-то просто.
Итак, как еще можно создать приложение, которое работает как минимум на трех основных настольных платформах?Я думал, что c # с mono будет подходящим вариантом, но я просто понял, что вам нужно использовать mono с MonoMac, чтобы опубликовать его в Mac App Store и использовать такие вещи, как Growl.А поскольку MonoMac, естественно, доступен только для Mac, снова невозможно развернуть приложение mono на всех платформах, не переписав его, по крайней мере, для Mac.И было бы неплохо, если бы приложение выглядело «родным» на всех платформах.Gtk # просто не очень хорошо выглядит на Mac.Это нормально для Windows и отлично подходит для Linux.
Я знаю, что мы можем использовать Objective-C для iOS и Mac, Java для Android, C # .net для Windows и C # .mono для Linux, но главное -что мы не хотим писать одно и то же приложение на разных языках.Это сделало бы разработку и сопровождение действительно трудными.
И мы предпочитаем языки с синтаксисом в стиле C, которые намного легче выучить для нас, веб-разработчиков PHP.Кстати: нам не нравится Air, и я не уверен насчет Java, так как никогда не использовал его, но он также не выглядит "родным" и выглядит довольно медленно.
Редактировать:
Просто примечание: не было бы проблемой создать собственную форму для каждой платформы, если хотя бы оставшийся код такой же.Можно ли использовать MonoMac, Gtk # и Win Forums в одном приложении C #?И я бы предпочел C #, а не C ++, так как у меня нет навыков в C ++, поэтому сначала мне нужно проверить, насколько сложно писать с помощью Qt.
Еще одно замечание: мы не планируем тратить много денег ипотому что нам нужно оплачивать программы для разработчиков приложений Apple, мы хотим использовать бесплатные или дешевые технологии.Предпочтительный открытый исходный код.