ФорумПрограммированиеПыхнуть хотите?F.A.Q. → Как можно сделать мобильное приложение не изучая новых языков программирования?

Как можно сделать мобильное приложение не изучая новых языков программирования?

  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 20 декабря 2012 г. 7:04, спустя 57 секунд

    Итак, разработка мобильных приложений сейчас - основной тренд. Но на практике тут все еще хуже, чем кроссбраузерная разработка под Netscape 5-7 лет назад. Устройств дофига, операционные системы разные, языки программирования разные, разрешения экранов разные. В общем, треш и угар. Нам, разумеется, не охота учить одновременно Java, Objective-C и С# … нам бы как-нибудь попроще и побыстрее. Какие же технологии спасут отца русской демократии?

    План А. PhoneGAP
    Вот здесь о том, что это такое: http://ru.wikipedia.org/wiki/PhoneGap
    Суть проста. Берешь обычный HTML+JS+CSS. Добавляешь по вкусу JqueryMobile (оно позволит ловить события жестов, а можно и дизайн быстро слепить из стандартных тем и компонентов без дизайнера). Тестируешь все в браузере, компилируешь (можно в онлайн компиляторе) и оба на - получаешь мобильное приложение для всех платформ. Одинаково везде выглядящее. Все здорово? Хер там …
    По сути дела это просто WebView обернутое в приложение для каждой платформы. Отсюда минуса:
    - Глюки браузера, неполная поддержка JS опять на каждой платформе свои.
    - Все очень тормозное. О красивых Jquery плагинах - забудьте сразу.
    - Тяжело тестировать, Android эмулятор - ну пиздец какой тормозной, надо еще MAC в виртуалке иметь, что опять же не быстро …
    - Глюки связанные с конфликтами между жестами, которые ловит ОС и WebView, посему ощущение "малочувствительности" приложения …
    Итог: Два месяца ебались, почти все сделали, потом бросили

    План B. Titanium
    Вот здесь о том, что это такое: http://habrahabr.ru/post/95010/
    Здесь тот же самый, родной JavaScript+HTML, но подход совсем другой. Компоненты и поведения, написанные на JS компилируются в нативные. В итоге приложения получаются самые честные. Все здорово? Хер там … Подстава в том, что компоненты на каждой платформе свои, в итоге:
    - Приложение выглядит везде по разному
    - Ну и как в старые добрые времена весь код состоит из if (netscape), тьфу то есть if (android)
    - Куча глюков в реализации самого фреймворка
    Итог: Неделю потестировали, поняли что гемор, бросили

    План С. Flex + Air
    Вот оно: http://help.adobe.com/ru_RU/flex/mobileapps/
    Никакого JS. Это наш старый, знакомый с детства флеш плюс фреймворк, который позволяет размечать приложение и компоненты почти как в HTML, местами даже лучше, во всяком случае height="100%" делает ровно то, что ожидается. Скомпилированное приложение содержит в себе виртуальную машину, что обеспечивает достаточную шустрость и абсолютную синхронность поведения на всех платформах. Все хорошо? Ну хз, хз … наверняка где-то подстава, только начали пробовать, из минусов во всяком случае:
    - Надо учить MXML и ActionScript (очень на JS похож) и осваивать FlashBuilder
    - Не поддерживается пока Windows Mobile
    - Большой размер приложения если AIR "вкомпиливать" внутрь.

    У кого есть еще какой-нибудь план?


  • adwo

    Сообщения: ? Репутация: N Группа: Джедаи

    Spritz 15 ноября 2012 г. 2:47, спустя 19 часов 42 минуты 17 секунд

    Сам делаю сейчас для owlt.me на phonegap + jquery mobile. ну пиздец все тормозное какое.

    - Тяжело тестировать, Android эмулятор - ну пиздеть какой тормозной, надо еще MAC в виртуалке иметь, что опять же не быстро …

    мак есть, а вот насчет эмулятора андроида - даже в доках PhoneGap сказано:

    Note: For a faster experience, use an Intel-based emulator image:

    Open the Android SDK Manager
    Install one or more Intel x86 Atom System Images as well as the Intel Hardware Accelerated Execution Manager (under Extras).
    Run the Intel installer, which has been downloaded to: extras/intel/Hardware_Accelerated_Execution_Manager within your Android SDK
    Create a new AVD with the Target set to an Intel image.
    When starting the emulator, ensure there are no error messages about the HAX module failing to load.


    И все летает.
  • Nyaah

    Сообщения: 574 Репутация: N Группа: Джедаи

    Spritz 15 ноября 2012 г. 3:34, спустя 47 минут 10 секунд

    По поводу плана-ц я бы не советовал.
    На первый взгляд все выглядит вполне радужно, но в процессе всплывают косяки, которые дико нервируют: неполная поддержка жестов, дикие тормоза при отображении родного вроде для adobe pdf формата, да и вообще наличие изображений в приложении заставляет процессор прогреться как следует, дико тормозной ArrayCollection, и бесячая лично для меня event модель для всего. А ну да и отсутствие возможности перейти на язык более низкого уровня для оптимизации тоже как-то не айс.
    Хотя писалось приложение два года назад, и возможно адобовцы допилили все до вменяемого состояния, но на тот момент у нас это было примерно так:
    - круто, кроссплатформенно: написал приложение для мобилы, поменял вьюшку и приложение для десктопа и все готово!
    - чета тормозит, профайлер говорит что ArrayCollection много жрёт, давайте обёртку для вектора напишем, которая бросать эвенты будет
    - что за херня, почему после оптимизации всего контента приложение 20Мб весит
    - нужна crypto либа, давайте заюзаем adobe alchemy
    - хер не работает adobe alchemy, на одной платформе прав не хватает, на другой без gcc не компилится, придётся юзать шифрование, реализованное на as3
    - почему pdf листается с двухсекундной задержкой? переписываем все на картинках…
    - зум через жопу работает, gestures половину заявленных жестов не пердаёт…
    - сука как же все медленно, нихера не работает, кто вообще предложил эйр юзать?
    - НЕНАВИЖУ ACTION SCRIPT!!!!
    И в итоге забили болт =)
    Кста AS3 куда больше похож на java чем на js, плюс куча классов, реализованных практически 1 в 1 с жавой {+++135+++} Ах да, я когда ушёл, чуваки заюзали фоунгэп, по отзывам производительность ещё хуже чем в эйре
    Work, buy, consume, die
  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 15 ноября 2012 г. 3:45, спустя 11 минут 20 секунд


    Ах да, я когда ушёл, чуваки заюзали фоунгэп, по отзывам производительность ещё хуже чем в эйре
    Это да, 100% подтверждаю.

    Я подозревал, что с AIR будут грабли, но плана D у нас нету, а начальство требует приложение. Если хоть какое-нибудь склепаем, запустим … можно будет поиметь добро на ресурсы для нативной переработки.
  • phpdude

    Сообщения: 26614 Репутация: N Группа: в ухо

    Spritz 15 ноября 2012 г. 7:19, спустя 3 часа 33 минуты 53 секунды

    ОТКАЖИ НАЧАЛЬСТВУ, БУДЬ МУЖИКОМ БЛЕЯДЬ! {+++31+++} либо нативки под каждую ось. иначе сокрость и красота никак. + еще и дизайны разные будут, иб в андроиде привыкли гавно жрать, которое в иосе не будут
    Сапожник без сапог
  • kostyl

    Сообщения: 5199 Репутация: N Группа: Джедаи

    Spritz 15 ноября 2012 г. 11:15, спустя 3 часа 55 минут 57 секунд

    Допишите на фоне гап (раз уж есть много чего и вроде как JS родной) и скажите, что круче не будет и надо либо писать приложение с одной кнопкой либо надо писать полнофункциональный нейтив ибо оно так и есть.
    Я на нейтиве (Obj-c) заёбуюсь иногда оптимизацию делать, а тут какие то варианты чтобы не тормозили - не будет так! Андрой сам по себе тормоз по своей архитектуре - тоже есть моменты. По другим платформам не скажу, но суть в том, что хорошее приложение и без "политехнологий" требует крутых усилий порой!
  • phpdude

    Сообщения: 26614 Репутация: N Группа: в ухо

    Spritz 15 ноября 2012 г. 11:19, спустя 4 минуты 17 секунд

    политехнологий

    нанотехнологий не?
    Сапожник без сапог
  • kostyl

    Сообщения: 5199 Репутация: N Группа: Джедаи

    Spritz 15 ноября 2012 г. 11:43, спустя 24 минуты 4 секунды


    политехнологий

    нанотехнологий не?

    не, "политехнологий" имел в виду одно решение для многих устройств, чё то типа такого
  • phpdude

    Сообщения: 26614 Репутация: N Группа: в ухо

    Spritz 15 ноября 2012 г. 12:19, спустя 35 минут 33 секунды



    политехнологий

    нанотехнологий не?

    не, "политехнологий" имел в виду одно решение для многих устройств, чё то типа такого
    так это же нанотехнологии!! будь в тренде
    Сапожник без сапог
  • kostyl

    Сообщения: 5199 Репутация: N Группа: Джедаи

    Spritz 15 ноября 2012 г. 12:35, спустя 15 минут 50 секунд

    phpdude, та бля, я бы такой чтобы на оперу сходить или мьюзикл… заёбаный короче не до тредов мне ))
  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 19 декабря 2012 г. 2:40, спустя 33 дня 14 часов 5 минут

    Ну что, месяц работы и нечто у нас получилось. Пока под андройд (под иос в самое ближайшее время будет сборка):
    https://play.google.com/store/apps/details?id=air.ru.sportbox.sportboxmobile&feature=search_result#?t=W251bGwsMSwxLDEsImFpci5ydS5zcG9ydGJveC5zcG9ydGJveG1vYmlsZSJd
    Кому не а лом, потестите и полайкайте …

  • Абырвалг

    Сообщения: 6477 Репутация: N Группа: Джедаи

    Spritz 19 декабря 2012 г. 4:25, спустя 1 час 45 минут 25 секунд

    Размер: 9,8M

    ого!
  • phpdude

    Сообщения: 26614 Репутация: N Группа: в ухо

    Spritz 19 декабря 2012 г. 6:24, спустя 1 час 58 минут 15 секунд

    Вот бы ещё прямые трансляции добавить(бесплатно),тогда вообще супер.


    а пососать не завернуть интересно?!
    Сапожник без сапог
  • adw0rd

    Сообщения: 22902 Репутация: N Группа: в ухо

    Spritz 19 декабря 2012 г. 7:07, спустя 43 минуты 36 секунд

    Прочитал только тему топика и сам не использовал эти библиотеки, но поделюсь ссылками:
    * http://kivy.org/ (http://archlinux.me/dusty/2012/11/18/gesture-recognition-in-kivy/)
    * http://www.haxenme.org/
    * http://pyzia.com/technology.html
    * http://www.appcelerator.com/ (http://www.appcelerator.com/platform/titanium-sdk)
    adw/0
  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 20 декабря 2012 г. 7:03, спустя 23 часа 56 минут 19 секунд


    Размер: 9,8M

    ого!
    А это расплата за AIR, если скомпилировать без него то 1М, но у нас не настолько продвинутые пользователи, что бы установить самостоятельно. Еще один минус к стартовому топику.

Пожалуйста, авторизуйтесь, чтобы написать комментарий!