Как стать автором
Обновить

Комментарии 53

А Cordova сама не входит в список?
По идее должна входить. Я например предпочёл Cordova (вместо PhoneGap), т.к. на Cordova её плагины встают без проблем, а вокруг PhoneGap пришлось танцевать и просить работать.
Ну, на Qt я живых приложений в том же Play Market-е не видел (нет, вру, видел одно, но так и не смог его запустить, потому что оно начало скачивать какие-то зависимости, ругаться на что-то, а потом и вовсе повесило телефон), но вот отсутствие того же Adobe AIR достаточно интересно. Хотя на пару с Apache Flex этот самый AIR вполне себе приспособлен под кроссплатформенную разработку «не игрушек».
Ну, например, 2gis на QT написан, если я не ошибаюсь.
Сделайте поиск по слову QT в магазинах.
Видишь суслика? Нет. И я не вижу, а он есть.


На самом деле есть приложения в маркете, которые базируются на Qt. Притом не только 2Гис, над которым они сами колдовали, а созданные с помощью Qt Creator (без кастомных бубнов)!
В этот список я бы добавил Monaca — облачная IDE, бекенд с поддержкой пуша, больше плюшек, правда за деньги.
Sorry for English — don't want to use transliteration. Info about Kony not full, prices are not actual (they're Kony cloud prices and cloud is SaaS). If someone interested — can go into details. Disclaimer: I'm not a Kony employee :)
Moya, tvoya ne ponimat
Проблемы с настройкой русской раскладки, поэтому пишешь по-английски? Занятно.
Так сразу бы написали тарифы, что за скрытность? Даже если вы там не работаете.
В статье я просил читателей делиться со мной информацией, если кто-нибудь может помочь дополнить статью. Был бы здорово, если бы вы поделились с нами актуальными ценами и личным опытом от работы с Kony :)
Ок, постараюсь пользоваться транслитерацией.

Конкретно по ценам не скажу, это зависит от клиента. В целом надо понимать, что использовать Kony для «просто проложений» — это палить из пушки по воробъям.
Основной фишкой является вся инфраструцтура в целом (например, middleware, которий можно деплоить под WebShpere и он будет хендлить все клиентские сервисы, за счет кластеризации сферы все очень просто масштабируется).

Новым направлением является Cloud — provisioning енва делаэтся по клику мышки, деплой — еще по одному.

Из проблем: нет контролов (т.е. с точки зрения UI прийдется много копипастить), вменяемий MVP framework будет только в следуюшей major версии, про аналитку — это рекламный ход (реализовивать прийдется самому через FFI), маленькоe community — в основном enterprise сектор (но достаточно бистрый и адекватный support), иногда встречаются весьма экзотическиe баги на фикс которых уходит много времени (необходимо связываться с сапортом, шарить логи etc.)

В целом, я бы сказал, если нет цели использовать всю инфраструктуру коней, лучше используйте Xamarin или native :)
У Xamarin есть еще и Trial на 30 дней, который позволяет использовать фичи Indie. Кроме того, они предоставляют скидки на лицензии студентам, но для этого надо с ними связываться.
Поэтому поведение, вид и производительность такая же как и у родных приложений!

В последней версии так и есть? Потому что смотрел месяцев 7-8 назад, на не топовых телефонах (с 1-2 ядрами и памятью менее 1 Гб) разница в скорости старта приложения или при переходе между некоторыми экранами/реакциями на клики была заметна, если сравнивать с тем же кодом нативного приложения. Причем повторный клик или переход между экранами был уже с обычной скоростью, такое ощущение, что приложение компилировалось по кускам на лету, хотя вроде как не так должно было бы быть.
В iOS версии приложений разницы не замечал, а вот в Android версии ответить затрудняюсь, т.к. пользуюсь своим смартфоном (HTC Desire C) преимущественно для звонков и на мой взгляд тормозит все одинаково.
У Xamarin различный подход для iOS и Android. В iOS код приложения будет компилироватся в нативный код, в случае Android — подымается виртуальная машина дотнет (параллельно с Dalvik\Art), которая будет выполнят байткод.
Kony это просто ад, ни поддержки человеческой (люди в форумах годами ждут ответов), ни возможностей (ни один из виджетов не работает как надо, у каждого что-то да сломано). Вырвиглазный IDE, ужасающий синтаксис js API. Пришлось использовать только потому что у клиента была договоренность уже с Kony, после этого проекта, в страну Коней ни ногой!
Ну, как IDE никто не мешает использовать ту же idea, например. Про support не соглашусь, реагируют в течении бизнес дня, возможно, зависит от типа лицензии
возможно, но компания-клиент для которой делался проект совсем не маленькая, думаю и лицензия у них была соответствующая.. Когда я смотрел в последний раз на Кони, там даже не было поддержки arc (не знаю появилась ли она сейчас), так что все FFI писались по-старинке, казалось как будто в 2009 вернулся. Нельзя не упомянуть про замечательный процесс компиляции на виндовой VM, переброску файла на хост mac os и замечательную команду perl extract.pl kbf/konyappiphone.KAR которая и генерирует наш проект, причем делать это нужно каждый раз, когда хочется что-то поменять. Ну а отсутствие дебаггера это уже просто мелочи, после того как смержишь все конфликты в .properties файлах, которые обновляются и меняют timestamp каждый раз при компиляции. А уж про то чтобы пользоваться git для сгенерированного проекта можно просто забыть, потому что меняется ВСЕ, так что если вы тот несчастный, которому нужно работать в команде, то Кони вас точно не обрадует. А, и на последок libkonyios_debug.a и libkonyios.a настолько велики, что в репозиторий на githubе например, они не влезут.
И это только то что я навскидку вспомнил, старался забыть о Кони, как о страшном сне. Скорее всего худший фреймворк, с которым мне приходилось работать.
Надеюсь вы действительно не работает на Кони, не хотел вас ничем обидеть, но это просто реально ужас, а не продукт.
Вот ради таких вот комментариев, я и решился на эту статью! Спасибо за то, что поделились опытом.
Наткнулся на MoSync. Можно писать на HTML5/JS и на C/C++
Из интересных фич для Android компиляция в бай-код Dalvik.

Кто нибудь пользовался? Насколько он популярен?
Судя по всему, проект заглох — SDK от 30 May 2013, в Newsletter Archives последняя запись — Jan 2013, форум полон спама.
НЛО прилетело и опубликовало эту надпись здесь
На xamarin совершенно точно можно. Собственно на нем можно всё, что можно и на нативных инструментах сделать.
В статье нет самого главного — сравнения производительности ;-) Мне кажется — было бы хорошим материалом для статьи написать на каждом фраемворке простое приложение со сложной формой и листом с большим количеством элементов и сравнить скорость запуска, плавность прокрутки и скорость разработки. Готов взять на себя xamarin версию такого приложения ;-)
Вот это и есть то главное, на что следует обращать внимание. Сразу будет видно, где ужасный синтаксис, а где жуткие тормоза.
Народ, кто нибудь xamarin пользовался? Как впечатления? Просто по описанию он мне очень понравился. Интересно что на деле
Unity3D тоже отлично справляется, хоть и заточен более под гейм дев.
С чем он отлично справляется? Он нормально справляется с кроссплатформенностью для написания игр, для обычных приложений он не подходит совсем, поэтому здесь Unity не упоминают.
Смотря что понимать под обычным приложением. Я лично создал несколько не игровых приложений в Unity, и он отлично справился.
дай ссылки!
интересно глянуть
Приложения создавали в одни руки, без выкладывания в магазины. Решали конкретные задачи.
Не спорю, что это не профиль данного движка, но создавать не игровые приложения на нем можно.
Я бы разделил Xamarin и Xamarin Forms на две части. Первый дает делать нативные приложения, используя нативные фреймворки, но на C#. Тут нет кросс-платформенности, только высокая реюзабельность кода, но зато все работает очень быстро и можно использовать мануалы и подходы от ObjC/Java. Xamarin.Forms это их новая попытка сделать набор универсальных контролов и утилит, чтобы единый код потом компилить под Xamarin.iOS, Android и WP. Пока что результат не очень — сырой, ограниченный и тормозит. Но они работают и правят довольно быстро, от 1.0 до 1.1.0.6110 путь прошли за пару масяцев, а изменилось порядочно. Заодно, XF бесплатен.
Ну и да, студенты получают бизнес версию Xamarin за $99/платформа.
Создан на основе Apache Cordova (как и PhoneGap)
Какие отношения между Cordova и PhoneGap? Кто на ком создан/от кого отпочковался/никак не связан/совместим? Я всегда считал, что PhoneGap раньше Cordova появился (и второй просто совместим по API с первым), а тут выясняется, что PhoneGap наследник Cordova.
Пользовался Cordova. Всё нравится, система делает то, что заявлено: позволяет создавать проекты на вебстеке. При этом сборка, деплой на устройство делается в одну команду. Доступны плагины, которые делают доступным для JS-рантайма аппаратные фичи платформы (и не только). Установка плагинов также очень проста. Выбор платформ для деплоя тоже прост, количество платформ поражает воображение (если при этом на них ещё и будет работать, то вообще потрясно).

Cordova не обязывает ко многим вещам. От разработчика требуется предоставить главный html-файл, в котором указать скриптовый файл cordova.js. Система использует переданный файл в качестве стартового для WebView, а файл скрипта предоставит API платформы. Совершенно не ограничиваются какие бы то ни было веб-библиотеки/фрейворки. Всё ограничивается только возможностями целевого WebView (к примеру, iOS / Android поддерживают flexbox, но старые модели андроида имеют частичную поддержку).

Определённо, Cordova позволяет веб-разработчику начать делать реальное мобильное приложение ещё не обладая специфическими знаниями мобильных платформ.
Только нативный код, только хардкор!
Приятный, но производительность приложений по моему слабая. Во всяком случае у меня была производительность никудышная для игры типа танчиков.
Интересно почему забыли про Appercode? Российская разработка, насколько я помню они располагаются в Академпарке Академгородка под Новосибирском, вполне классные ребята.
А это разве не надстройка над Xamarin? Интересная была у них идея писать интерфейс в XAML под все платформы, но уже тоже самое предлагает Xamarin.Forms.
Последняя голосовалка не вполне раскрывает возможности и задачи кроссплатформенной мобильной разработки. Есть задачи где нужны именно кроссплатформенные, а не нативные инструменты. Вот мой short-list:

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

2. Простейшие приложения. Но нужные на всех платформах. Аналог сайтов-визиток. Тормознутось того же PhoneGap в приложении-визитке никак не проявится.

3. Отсутствие денег на нативную разработку под кучу платформ не должно быть причиной не делать приложение, если вы верите в идею. Примерно то же что и п.1, но в production.

4. Когда вам нужно не 2.5 основные платформы а 10 — то Cordova и его последователи практически остаются без конкурентов.

Автор, добавьте пожалуйста в описание Telerik Platform, что это тоже продолжение Apache Cordova.
Про Intel XDK забыли. Тоже, если не ошибаюсь, развитие Apache Cordova.
Спасибо, интересная штука!
Фишки, конечно, описаны языком маркетолога, не все так хорошо, как хотелось бы.

Комментаторы и автор поста, огромная просьба, выкладывайте примеры своих работ на описанных фреймворках. Интересно все же посмотреть.

Сам разрабатывал под PhoneGap, но показать проект не могу по причине NDA. В разработке были места, где пришлось долго и упорно плясать с бубном, некоторые проблемы так и не были решены. На выходе получается ничего такой продукт способный шустро работать на последних девайсах Apple, с Android все сложнее в плане скорости работы.
Sencha Touch — это Javascript-фрэймворк для создания кроссплатформенных веб-приложений, но к нему есть консольная утилита Sencha Cmd, которая делает из вашего веб-приложения PhoneGap-программу для iOS и Android.
Можно, конечно, отнести его к PhoneGap или Apache Cordova.
Появилась еще одна альтернатива для .NET разработчиков — Ubiq Mobile. Приложения работают под Android, iOS, Windows Phone и на старых Java телефонах и коммуникаторах. Быстрая кросс-платформенная .NET разработка. Не требует особых навыков разработки мобильных приложений. Есть готовые шаблоны и компоненты. В основе — облачная архитектура. Краткий обзор How to create simple UbiqMobile application с видео.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации