Ответ 1
Отказ от ответственности: я работаю в компании, Particle Code, которая создает межплатформенную структуру. В этом пространстве есть масса компаний. Новые кажутся spring каждую неделю. Хорошие новости для вас: у вас есть много вариантов.
Эти рамки используют разные подходы, и многие из них принципиально разработаны для решения различных проблем. Некоторые из них ориентированы на игры, некоторые из них ориентированы на приложения. Я задал бы следующие вопросы:
Что вы хотите написать? Приложение для предприятий, личное приложение для повышения производительности, игра-головоломка, шутер от первого лица?
Какую среду разработки вы предпочитаете? IDE или простой текстовый редактор?
У вас есть сильные чувства относительно языков программирования? Из фреймворков, с которыми я знаком, вы можете выбирать из ActionScript, С++, С#, Java, Lua и Ruby.
Моя компания больше в игровом пространстве, поэтому я не играл столько с фреймворками JavaScript + CSS, как Titanium, PhoneGap и Sencha. Но я могу немного рассказать о некоторых из ориентированных на игры фреймворков. Игры и богатые интернет-приложения - это область, где могут развиваться кросс-платформенные среды, потому что эти приложения имеют тенденцию придавать большее значение визуальному единству и меньшему смешению с родными пользовательскими интерфейсами. Вот несколько рамок для поиска:
-
Unity www.unity3d.com - это движок 3D-игр. Это действительно не похоже на любую другую среду разработки, в которой я работал. Вы создаете сцены с 3D-моделями и определяете поведение, добавляя сценарии к объектам. Вы можете script в JavaScript, С# или Boo. Если вы хотите написать 3D-физическую игру, которая будет работать на iOS, Android, Windows, OS X или консолях, это, вероятно, инструмент для вас. Вы также можете писать 2D-игры с использованием 3D-активов - прекрасным примером этого является инди-игра Max и Magic Marker, основанная на 2D физике -скроллер, написанный в Unity. Если вы этого не знаете, я рекомендую проверить его (особенно, если в вашем доме есть дети). Макс доступен для ПК, Wii, iOS и Windows Phone 7 (хотя последняя версия представляет собой порт, поскольку Unity не поддерживает WinPhone). Unity поставляется с некоторыми образцовыми играми в комплекте с 3D-активами и текстурами, что действительно помогает ускорить работу с тем, что может быть довольно сложной средой.
-
Corona www.anscamobile.com/corona - это движок 2D-игр, который использует язык сценариев Lua и поддерживает iOS и Android. Торговой точкой Corona является способность писать игры на основе физики очень быстро в нескольких строках кода, а большое количество игр на базе Corona в магазине приложений iOS является свидетельством его успеха. Окружающая среда очень скудная, которая понравится некоторым людям. Он поставляется с симулятором и отладчиком. Вы добавляете свой текстовый редактор по своему выбору, и у вас есть среда разработки. Базовый SDK не содержит компонентов интерфейса, таких как кнопки или списки, но для подписчиков доступно дополнение CoronaUI.
-
Particle SDK www.particlecode.com - это немного более общее кросс-платформенное решение с фоном в играх. Вы можете писать в Java или ActionScript, используя модель приложения MVC. Он включает интегрированную среду Eclipse с редактором UYSIWYG UI. В настоящее время мы поддерживаем создание устройств для Android, iOS, WebOS и Windows Phone 7. Вы также можете вывести Flash или HTML5 для Интернета. Структура была первоначально разработана для онлайновых многопользовательских социальных игр, таких как покер и нарды, и подходит для 2D-игр и приложений со сложной логикой. Структура поддерживает 2D-графику и включает в себя 2D-физический движок.
Примечание:
Сегодня мы объявили, что Particle Code был приобретен Appcelerator, создателем кроссплатформенной платформы Titanium.Суб >
<суб > ...суб >
По состоянию на 1 января 2012 г. [Код элемента] больше не будет официально поддерживать платформу [Particle SDK].Суб >
- Airplay SDK www.madewithmarmalade.com - это среда С++, которая позволяет вам разрабатывать Visual Studio или Xcode. Он поддерживает как 2D, так и 3D-графики. Airplay нацелен на iOS, Android, Bada, Symbian, webOS и Windows Mobile 6. У них также есть надстройка для создания приложений AirPlay для PSP. Мой С++ был очень ржавым, я не играл с ним много, но он выглядит круто.
С точки зрения кривой обучения, я бы сказал, что у Unity была самая крутая кривая обучения (для меня), Corona была самой простой, а Particle and Airplay где-то посередине.
Еще один интересный момент заключается в том, как структуры обрабатывают различные форм-факторы. Corona поддерживает динамическое масштабирование, которое будет знакомо разработчикам Flash. Это очень легко использовать, но означает, что в конечном итоге вы теряете пространство экрана при переходе с экрана 4: 3, такого как iPhone, на 16: 9, как и на новые устройства Android с QHD. Редактор пользовательского интерфейса SDK Particle позволяет создавать гибкие макеты, которые масштабируются, а также позволяет настраивать макеты для отдельных размеров экрана. Это занимает немного больше времени, но позволяет сделать приложение удобным для каждого экрана.
Конечно, то, что работает для вас, зависит от вашего индивидуального вкуса и стиля работы, а также от ваших целей - поэтому я рекомендую загрузить пару этих инструментов и дать им шанс. Все эти инструменты можно попробовать.
Кроме того, если бы я мог просто разместить объявление публичной службы - большинство из этих инструментов находятся в действительно активной разработке. Если вы найдете фреймворк, который вам нравится, обязательно отправьте отзыв и сообщите им, что вам нравится, что вам не нравится, и функции, которые вы хотели бы видеть. У вас есть реальная возможность повлиять на то, что входит в следующие версии этих инструментов.
Надеюсь, что это поможет.