Відмова від відповідальності: я працюю в компанії, яка містить частину коду, яка створює міжплатформові рамки. У цьому просторі є багато компаній. Здається, що щотижня виникають нові. Гарна новина для вас: у вас багато варіантів.
Ці рамки використовують різні підходи, і багато з них принципово розроблені для вирішення різних проблем. Деякі зосереджені на іграх, деякі - на додатках. Я хотів би задати наступні питання:
Що ти хочеш написати? Корпоративний додаток, програма особистої продуктивності, гра-головоломка, шутер від першої особи?
Яке середовище розвитку ви віддаєте перевагу? IDE або звичайний текстовий редактор?
Чи маєте сильні почуття до мов програмування? З знайомих мені фреймворків можна вибрати ActionScript, C ++, C #, Java, Lua та Ruby.
Моя компанія більше в ігровому просторі, тому я не так сильно грала з рамками JavaScript + CSS, як Titanium, PhoneGap та Sencha. Але я можу вам трохи розповісти про деякі рамки, орієнтовані на ігри. Ігри та багаті Інтернет-програми - це область, де можуть існувати міжплатформні рамки, оскільки ці програми, як правило, надають більшого значення, щоб бути візуально унікальними та менше поєднуватись із рідними інтерфейсами користувача. Ось кілька рамок, які потрібно шукати:
Unity www.unity3d.com - двигун 3D-ігор. Це насправді на відміну від будь-якого іншого середовища розробки, над яким я працював. Ви створюєте сцени за допомогою 3D-моделей та визначаєте поведінку, додаючи сценарії до об’єктів. Ви можете писати сценарії в JavaScript, C # або Boo. Якщо ви хочете написати 3D-гру на основі фізики, яка працюватиме на iOS, Android, Windows, OS X або консолях, це, мабуть, інструмент для вас. Ви також можете писати 2D ігри за допомогою 3D-активів - прекрасним прикладом цього є інді-гра Max та Magic Marker, двовимірний скроллер на основі фізики, написаний в 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. Він включає IDE на основі Eclipse з редактором інтерфейсу WYSIWYG. Наразі ми підтримуємо створення пристроїв для Android, iOS, webOS та Windows Phone 7. Ви також можете вивести Flash або HTML5 для Інтернету. Рамка була спочатку розроблена для багатокористувацьких соціальних ігор в Інтернеті, таких як покер та нарди, і вона підходить для 2D ігор та додатків зі складною логікою. Рамка підтримує 2D графіку і включає 2D двигун фізики.
Примітка:
Сьогодні ми оголосили, що Кодекс частинок придбав Appcelerator, виробник кросплатформенної системи Titanium.
...
З 1 січня 2012 року [ Код частинок ] більше не буде офіційно підтримувати платформу [ Частинка SDK ].
Джерело
- Airplay SDK www.madewithmarmalade.com - це система C ++, яка дозволяє вам розробляти або Visual Studio, або Xcode. Він підтримує як 2D, так і 3D графіку. Airplay націлює на iOS, Android, Bada, Symbian, webOS та Windows Mobile 6. Вони також мають надбудову для створення програм AirPlay для PSP. Мій C ++ дуже іржавий, я з ним не багато грав, але це виглядає круто.
Щодо кривої навчання, я б сказав, що в Єдності була найкрутіша крива навчання (для мене), Корона була найпростішою, а Частинки та Ейрпіл - десь посередині.
Ще один цікавий момент - це те, як рамки обробляють різні факторні форми. Corona підтримує динамічне масштабування, яке буде знайоме розробникам Flash. Це дуже просте у використанні, але означає, що ви втрачаєте простір екрану, переходячи від екрану 4: 3, як iPhone, до 16: 9, як нові пристрої Android QHD. Редактор інтерфейсу інтерфейсу Particle SDK дозволяє розробляти гнучкі макети в такому масштабі, але також дозволяє налаштувати макети під окремі розміри екрана. Це займає трохи більше часу, але дозволяє додаток виглядати на замовлення для кожного екрану.
Звичайно, те, що працює для вас, залежить від вашого індивідуального смаку та стилю роботи, а також від ваших цілей - тому я рекомендую завантажити пару цих інструментів і дати їм знімок. Усі ці інструменти можна спробувати.
Крім того, якщо я міг би просто розмістити оголошення про державну службу - більшість цих інструментів реально активно розвиваються. Якщо ви знайдете вподобану вам рамку, обов'язково надсилайте відгуки та повідомте їм, що вам подобається, що вам не подобається та функції, які ви хочете бачити. У вас є реальна можливість впливати на те, що переходить у наступні версії цих інструментів.
Сподіваюся, це допомагає.