Автономная кросс-платформенная среда RIA
-
07-07-2019 - |
Вопрос
Я хочу создать простой механизм, похожий на «систему показателей», для некоторых карточных игр/игр в стиле салона.Хитрость в том, что я хочу, чтобы это было визуально стимулирующее приложение (анимация в стиле WPF/Flash и т. д.) и со временем доступное на Mac, Windows и некоторых мобильных клиентах.Есть мысли по поводу фреймворка?Было бы здорово, если бы Silverlight можно было запустить в автономном режиме, иначе это похоже на Adobe Flex через AIR.
Мысли?
Решение
Поскольку вам нужны как мобильные устройства, так и настольные компьютеры, лучшим выбором будет Титан.
Другие советы
Если вы предпочитаете использовать Silverlight, есть хорошие новости: Сильверлайт 3, сейчас в бета-версии, и, надеюсь, в не столь отдаленном будущем, у него будет (ограниченный) автономный режим. Некоторые подробности здесь.
Если вы верите маркетинговым материалам, вам также следует обратить внимание на JavaFx поскольку он также продвигает мобильные платформы.Однако, судя по тому, что я видел о ней до сих пор, есть вероятность, что это еще одна платформа, мертвая по прибытии, и она никогда не приживется.
Adobe Эйр, с Flex или без него, вы сможете работать в автономном режиме, кроссплатформенно, но не мобильно.
Хулу для рабочего стола интересен тем, что по сути это Flash-приложение, включенное в оболочку приложения для Mac или Windows.Для этого требуется, чтобы на компьютере пользователя уже был установлен Flash, но проникновение составляет около 98%, поэтому я не считаю это сдерживающим фактором.Недостаток этого подхода заключается в том, что вам придется создавать и поддерживать отдельную кодовую базу-оболочку для каждой поддерживаемой вами операционной системы, но преимуществом является то, что вам не нужно требовать от пользователей установки среды выполнения AIR.
Каковы ваши требования к офлайн-режиму?Если вам не нужно читать файлы из локальной файловой системы, Flash и Silverlight прекрасно работают внутри локального html-файла.Flash имеет простой механизм локального хранения посредством SharedObject
сорт.Я не знаю, есть ли в Silverlight что-то подобное.
Adobe AIR необходим только в том случае, если вам нужны определенные системные разрешения, такие как установка ассоциаций файлов, полный ввод-вывод, интеграция в системный лоток/док-станция и т. д.
Есть несколько телефонов, поддерживающих Flashlite, который практически идентичен ActionScript 2.0.Таким образом, портировать приложения ActionScript несколько проще.Тем не менее, flashlite по-прежнему опирается на SharedObject
класс для постоянного хранения.
Mac и iPhone/iPod Touch используют браузер Safari, поэтому вы можете использовать HTML-код. <canvas>
элемент + JavaScript + автономное хранилище HTML5 сегодня.Это также поддерживается в Firefox, который доступен для Windows, Mac и Linux.Посмотреть некоторые игры, созданные с использованием этой технологии, можно здесь: http://www.sarkscape.com/games
Java существует уже довольно давно.Он даже поддерживает OpenGL через библиотеку JOGL.Я не знаю конкретных библиотек для игр.
Единственным по-настоящему распространенным языком программирования для мобильных устройств является j2me, однако портировать настольные Java-приложения на j2me не так просто.
JavaFX все еще находится в зачаточном состоянии, и предстоит сделать много улучшений, но пока не стоит пытаться.
Adobe Flex через AIR кажется мне хорошим подходом.Java может быть еще одним вариантом.