Кросс-платформенная разработка под мобильные устройства
По мотивам этого мероприятия dou.ua/calendar/4005
Насколько сейчас востребованы специалисты такого профиля? Как в мире так и в Украине. Есть ли позиции в наших компаниях?
Сам начинающий android разработчик. Стоит ли изучать кросс-платформенную разработку под мобильные устройства на java или писать нейтив приложения и не морочить голову?
59 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарівЕсли планируешь в лидеры рынка, то лучше нейтив. Если фриланс, то лучше cross-platform. В фрилансе заказчики как правило мелче и у них денюжек для оплаты разработки под разные платформы часто не хватает. Но даже если ты разрабатываешь на кросстулзах, то все равно знание платформы (которое можно постичь через нейтив) будет большим плюсом.
И соревновацца с индусами за 20 баксов в час. Самое оно. ТАк и надо отсекать конкуренцию.
Сколько баксов в час это тема уже другого разговора. Я имел ввиду то, что на фрилансе болшинство заказов на кросс-платформенные решения, по той причине что бюджет не позволяет заказывать под каждую отдельную платформу.
иногда написать 2 версии будет быстрее и дешевле чем 1 крос платформ
Редко. В основном, сравнимо по цене. На кроссплатформу индусы лохов, в основном, и разводят, ибо выучить что-то, кроме жс не в состоянии.
Как раз того. В нижнем ценовом сегменте рынка и доминирует кросс-платформа, т.к. играют на жадности заказчика, обманывая его о эффективности стоимостной кросс-платформы.
У вас в данной сентенции два ложных утверждения:
1. на фрилансе болшинство заказов на кросс-платформенные решения -> большинству пофиг, на чем написано;
2. бюджет не позволяет заказывать под каждую отдельную платформу -> стоимость сравнима.
Я просто оставлю это здесь: www.infoq.com/...ok-HTML5-Native
Ну и еще такой боянчег bit.ly/1agoHO3
dou.ua/...-comment#376637
В сиим комменте я упоминал, что сделать нормальный флоу возможно, но вот цена будет близка (в пределах 10%) разработке отдельных натив приложений. ТАк в чем же профит? Особенно, при учете, что что-то еще более серьезное на хтмл 5 уже затормозит (красивые транзишны с движением некоторого количества элементов и легким отрехмериванием) даже на современных девайсах без еще более глубокой оптимизации, которая выльется уже в то, что выгоднее бы было писать отделньые нативы.
Забей на кросплатформу, пиши нативные приложения
Из опыта — если это Unity3d или cocos2d/сотоварищи, то да.
Если яваскриптовые/с#/no rom basic обертки — то нет. В апсторе нет ни одного успешного приложения на них (и не было). Распилить деньги неопытного энтерпрайз заказчика и через полгода забыть как страшный сон — это их основное применение.
А любой нэйтив (подозреваю что даже Вин) вполне на хлеб с маслом заработать даст.
+1 геймдев в мобайле — только тут кросплатформ разработка в мобайле на основе разных фреймворков и работает. Но он имеет очень мало отношения к хтмл5-джаваскрит
Яваскриптовые/сишарпные обёртки — для ленивых разработчиков, которые нарожали детей и им некогда учить новое, а только продолжать старое.
дык вот же ж
www.embarcadero.com/...ion-development
пиши нейтив приложения и не морочь себе голову. Тема крос-платформеного девеломпента с хтмл5 уже не первый год «перспективна» но все никак не може выстрелить. И в таком состояние останется надолго.
В PhoneGap иногда приходится повозиться, что б добиться приемлемой отзывчивости, но в целом использовать можно.
А что это за вебинар, никогда не видел. Можно потом видео с мероприятия где-то посмотреть?
Пробовал как-то дома фонгап. Нет слов. Просто бесполезнейший кал. Или я дурень чего-то не понял или я даже не знаю. Элементарная задача: как сделать быстрый тэп или скрол в js приложении? Ответ: НИКАК.
Для tap есть миллион библиотек. Я использую Hammer.
Для скрола iscroll
Использовал 4.2.5. Во враппер рендерил разное кол-во div’ов. Не помню, что б были проблемы с этим.
Андроид?
Да. И iOS
Писал быдло и ничего :-) dev.gordio.pp.ua/j4f
www.codenameone.com
Qt + QML
Adobe Air мы успешно юзаем
Unity3D + NGUI или фонегап?
вот цены только у них...
есть версия free
Qt рулит.
Мы решили остановиться на Sencha Touch + Cordova. На новых девайсах тормозов нет, хотя нативный интерфейс приятней.
У Cordova (PhoneGap) проблема в том что он (как и все подобные запускалки джаваскрипта) «ничего не умеет»: очень мало АПИ, оно годится только для __очень__ тонких клиентов. Локальную базу надо докручивать с такой-то матерью (если кроссплатформенно); бекграунд задач вроде нима; нотификейшены и тд.
Но будем надеятсо что с выходом версии 3 все станет веселее
Да, надо самим писать.
И еще дебажить JS код — тот еще геморрой. Weinre не настолько функционален.
С какого-то размера данных вам прийдется использовать эти приемы (ресурсы железа жестко ограничены).
Давайте я вам напишу, что проблем с железом
Да далеко не все можно сделать на фонгепе, но так же далеко не все __имеет смысл делать__ в виде нативных приложений.
Еще раз, секрет прост: прямые руки и никакого мошенничества.
Повторяю вопрос:
I am using iScroll in my project. I have a small issue. Mine is a Note application which functions just like the Native Note app. My issue occurs when I go to the EDIT MODE when i click on the textarea.
If i have more content in my screen than the screensize. And if i go to the Edit mode (ofcourse the keyboard popups up). It doesnt focus on the very last word. of the text content.
It either doesnt scroll to the last
И таких жоп там тысячи. И их надо выпиливать костылями.
И вы не умеете читать:
Конкретно по приведенному вами примеру:
С текстариями проблем не замечал (посмотрю еще раз), возможно проблема в iScroll.
.
UPD.
Да бывало, в нашем случае было связанно со «странной» верской, привели в порядок верску проблемы пропали.
Снова же, от багов никто не застрахован, возможно в новой версии движка еще что-то поломают, а возможно в новом андроиде пропадет еще один месяц календаря :)
Проще, только хтмл/жс проггеров надо больше + тесты под отедльную платформу + очень сложные и объемные оптимизации, чтобы сделать приложение гладким + отсутствие нормальной стандартной библиотеки. Вот и выходит, что натив под каждую платформу выходит либо столько же, либо на 10% дороже, чем писать под кросс-платформу.
Для УИ штук, это не большая проблема, как-то же для веб интерфейсы делают.
А вот с «неУИ» (бекграунд задачи и тд) все таки не весело.
Это если контора делает много мобильных приложений.
Когда же у вас мобильное приложение это просто дополнение к веб-системе, то или вам прийдется нанимать отдельных лудей которые большую часть времени будут пинать или чего хуже фрилансеров (со всеми рисками). Еще есть вариант переучивать людей, тут фонгеп как раз супер выход (у дотНетчиков еще возможно Ксаманир).
Снова же, как писал выше, всему свое место. И, ИМХО, фонгеп и тд — это супер решение для корпоративных/е-комерс приложений.
Отсутствие родных контроллеров, создающих базовые анимции — это проблема еще та, на самом — то деле. Именно поэтому так важна стандартная библиотека (типа иосового уикита, в анрдоиде, кстати, тоже весьма уныло все).
Любое мобильное приложение — это в первую очередь не функционал, а UX. И корпоративные, екоммерс — не исключения. Любой владелец бизнеса это понимает, посему я бы скорее обозначил нишу фонгепа и подобных приблуд, как нишу приложений для галочки и под распил, вкупе с крайне недальновидными заказчиками.
Скажем, в свое время сталкивался с одной крупной компанией, очень тревожились за ух даже для своего внутрикорпоративного приложения и я их в этом не могу не поддержать, т.к. сделано было приложение, которым дийсно пользуюцца.
То есть выводы:
На данный момент все куда больше зависит от прямоты рук разработчиков, чем от нативный или гибрид (кроссплатформер).
Приемлемо, т.к. нет никаких транзишнов интересных. Сухенький фейсбук. А вот с выездом меню, при котором оно бы в псевдо-3д раскрывалось оно (лист, сложенный в половину раскрываецца), ситуация стала бы интересней. Думаю, сенча бы всплакнула. С любым нативным железом ситуация та же.
Посему мне пока не виден профит, при учете того, что цена разработки почти идентична, но при этом вся кросс-платформа заведома ограничивает разраба в деятельности.
Человек пишет
На этом все как мне кажется кончено. Никто после нормального скрола и тэпа не захочет пользовать тормозящюю фонгаповскую (или еще какую-то там) обертку.Справедливо для приложений массового рынка. Но если решение об использовании приложения принимает за тебя другой человек, то от пользования оберткой уже не отказаться.
Delphi теперь поддерживает Android/iOS ^_^
Oxygene (тоже диалект паскаля) поддерживает Android,iOS,WP7/8 etc..
FPC — давно поддерживает
C++ вообще предлагает Qt, Marmalade SDK, cocos2d-x etc..
Всякие html/js к сожалению весьма тормозные, но тоже можно.
Делфи стоит около трех килобаксов за копию, при этом даже для самого простого надо писать свой велосипед. Вот, к примеру roman.yankovsky.me/?p=996
Всякие мармалады и прочее — тоже довольно убогие поделия. Я бы 10 раз подумал прежде чем писать что-то кросплатформ, кроме игр.
По ссылке никакой не велосипед, а костыль ;) Но вообще с тем, что писать на нативных средствах гораздо приятнее — согласен. У нас по наблюдениям написание кроссплатформенного приложения под заказ на каком-нибудь PhoneGap (с нормальным тестированием всяких мелочей) занимает примерно столько же времени (если не больше) времени, что и написание двух нативных аналогов под две основные мобильные системы
В старые добрые времена там был активХ плагин для ИЕ....
smartmobilestudio.com
Не совсем делфи, но тут Object Pascal транслируется в JS
ещё есть Appcelerator Titanium на JavaScript!
Рекомендую!;)
Год назад был опрос о мобильной разработке
dou.ua/...survey-results
там есть немного и о кросс-платформенных инструментах.
Есть еще Xamarin для разработчиков C#