Обзор Corona SDK

Corona SDK logo

Корона СДК представляет собой, что то вроде фреймворка для написания приложений под мобильные платформы. На данный момент есть поддержка iOS и Android, так же есть поддержка Windows Phone в закрытом форке бета версии, скоро обещают ввести в паблик релиз.

Поддерживаемые платформы
Поддерживаемые платформы

Как происходит работа в короне?
Вы скачиваете и устанавливаете себе на компьютер (есть версии, как и для Mac, так и для Win) некую программную платформу, которая представляет собой эмулятор устройств (айфоны, айпады, различные ведроиды) и среду выполнения кода. Эмулятор работает в целом быстро, но для некоторых игр, например раннеров, недостаточно быстро.

Космический корабль бороздящий бескрайние просторы космоса в эмуляторе CoronaSDK.
Эмулятор Corona SDK

После чего можете создавать новые проекты и писать код.
Код пишется на скриптовом языке LUA. Он достаточно простой, но если у вас существенный опыт написания си подобного кода, то могут быть временные трудности, например я не переставал ставить {} и ; которые в LUA не нужны.

Написание кода в общем сводится к обращению апи короны через луа.
То есть ребята из короналабс реализовали кроссплатформенное апи на луа для любых функций и потребностей в телефоне. Но разумеется не для всех, надо понимать, что это не натив и выйти за пределы существующего апи вы не сможете. Конечно если у вас не интерпрайз редакция короны. По этому повод переживать не стоит, так как есть практически все, что надо для 2D игр.

Это и работа с анимациями, звуком, сетью, различными эффектами, поддержка на уровне ядра партикл десигнера, встроенный физический движок Box2D, менеджер сцен.
Разумеется апи для работы с инапами, различные рекламные платформы и монетизационные сервисы.

    К слову о редакциях, на данный момент их 4, хотя не так давно было всего две.
  • 1) Free - бесплатная версия, которая позволяет делать работающие приложения и публиковать их в сторы. Нет поддержки некоторых важных апи, например для работы с инапами, рекламой, улучшенной графикой и так далее.
  • 2) Basic - первая платная версия с поддержкой большего количества апи.
  • 3) Pro - оптимальный выбор для профессиональной работы на короне. Есть доступ ко всем апи и плагинам.
  • 4) Intrprise - выбор для тех, кто считает, что ему могут понадобиться нативные вставки кода, данная версия предоставляет такую возможность. Еще одно выгодное отличие - компилирование проекта без подключение к сети.

Редакции CoronaSDK
Редакции Corona SDK

Да, когда проект компилируется весь код и ресурсы отправляются на сервер короны, собственно там происходит сама компиляция в нативный код для каждой платформы и вам на выходе дается либо .ipa файл, либо .apk.

Кстати важный момент - компилить для iOS можно только с мака, но в тоже время с мака можно компилить и на андроид. Да и вообще если говорить откровенно, то разработчики явно отдают приоритет, как iOS, так и Mac версии сдк, там обычно первыми появляются новые фичи, а некоторые вообще доступны только там.
Стоит так же отметить, что и на маке и на винде некоторые вещи эмулятором не поддерживаются, например нативные поля ввода текста, что создает реальный геморой, если вы создаете приложение, куда надо писать много текста.

В целом, благодаря хорошему и функциональному апи, приложения можно делать со страшной скоростью. Количество кода по сравнению с нативном уменьшается в несколько раз.

Однако плата за это - производительность.
Не сказал бы, что она совсем уж плохая, нет, она приемлемая и на короне делают 2D игры любых жанров, но конечно же отстает от натива и даже от других некоторых кроссплатформенных средств разработки, но это все слихвой компенсируется удобством и скоростью написания кода.

Corona SDK можно так же рассматривать, как средство сверх быстрого прототипирования 2D проекта, после чего его можно отдавать в большую разработку скажем на юнити.

Еще один большой плюс - активная разработка. Работа идет и это очень хорошо ощущается, почти каждый день выкатываются Daily Build в которых либо баг фиксы, либо оптимизация работы, либо новые фичи.

Документация хорошая и часто обновляемая. Наличие нескольких IDE, хотя можно писать и в Notepad++ вполне комфортно.

В общем если вы хотите делать настоящие приложения, делать их быстро и меньше медитировать над кодом, то Corona SDK хороший выбор!


comments powered by Disqus