Android — Разработка Гибридных мобильных приложений


Содержание

Гибридные приложения как ответ на растущий спрос мобильной разработки

Согласно последнему опросу Red Hat, одного из мировых провайдеров программных решений с открытым исходным кодом, сегодня 50% компаний нуждаются в специалистах по мобильной разработке или менеджерах мобильных проектов. Интересно, что в этой доле компаний нативные разработчики слабо востребованы. Лидирующие позиции занимают front-end специалисты — 32% опрошенных голосуют за front-end.

Данные исследований Gartner также подтверждают повышение интереса со стороны бизнеса к мобильной разработке. По их прогнозам, к концу 2020 года спрос на разработку мобильных приложений будет расти в 5 раз быстрее, чем штат IT компаний, способных удовлетворить этот спрос.

Что говорит статистика: тренды в мобильной разработке

Если еще пару лет назад компании делали ставки на конкретный опыт в создании нативных iOS и Android приложений, то теперь в качестве альтернативы они рассматривают кросс-платформенные решения. Это можно объяснить потребностью бизнеса в быстрой разработке относительно простых приложений.

Многим компаниям приложения необходимы быстрее, чем они могут быть разработаны. По словам главного аналитика Gartner Эдриана Леова, быстрая разработка и постоянное поддержание мобильных приложений затруднены из-за растущего спроса, ускоренного развития цифровых технологий и дефицита кадров.

В целом, заказчиков мобильной разработки можно условно разделить на 2 группы:

  • Первым требуется создание сложных, ресурсоёмких приложений с наличием многослойной анимации и вычислительными функциями.
  • Для вторых актуальны приложения с адаптивным интерфейсом, без сложной анимации и хранения большого количества данных непосредственно в памяти девайса.

Очевидно, что нативная разработка является лучшим выбором для первых, тогда как гибридный подход больше отвечает потребностям вторых.

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

Отсюда следует вывод, что гибридная разработка становится не менее востребованной, чем нативная.

Опыт гибридной разработки на примере PhoneGap

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

PhoneGap — это открытый фреймворк, служащий для ускорения процесса разработки кросс-платформенных приложений. Именно PhoneGap позволяет делать приложения на HTML5 + JavaScript, после чего компилировать их в установочные файлы под любую операционную систему: iOS, Android, Windows Phone, BlackBerry.

Общий смысл гибридной разработки заключается в том, что мы работаем с WebView мобильного телефона с помощью HTML5/Javascript/СSS, а затем просто «пакуем» подобного рода разработку в нативную «обертку».

Благодаря использованию PhoneGap, мы:

  • создаём мобильную версию сайта с адаптивной вёрсткой;
  • получаем взаимодействие с основными функциями мобильного устройства, что обеспечивается за счёт плагинов PhoneGap, написанных на нативном языке и предоставляющих открытые методы JavaScript;
  • гарантируем возможность интеграции приложения с любыми мобильными платформами.

Фактически, мы создаем мобильные приложения с использованием веб-технологий. Обычный пользователь даже не замечает разницы, поскольку гибридное приложение устанавливается на устройство и выглядит в точности, как нативное. Тем не менее, разница существует, и это необходимо учитывать, при выборе подхода.

Плюсы и минусы гибридного подхода

По большему счёту, к основным достоинствам гибридного подхода относятся:

  • Кросс-платформенность. Сделав одно приложение, можно экспортировать его под любую операционную систему – iOS, Android, Windows Phone, BlackBerry.
  • Доступная стоимость разработки – в разы меньше, чем при нативном подходе.
  • Использование одного языка – JavaScript.
  • Доступ к основным данным мобильного устройства: GPS, камера, телефонная книга и т.д.
  • Работа в оффлайн-режиме.
  • Возможность распространять приложение через официальные магазины приложений.

Гибридная разработка пользуется популярностью у крупных мировых компаний. Множество широко известных приложений являются кросс-платформенными. Среди них: Wikipedia, Health tap, BBC Sport App и Evernote. Пользователи скачали каждое из этих приложений более миллиона раз, что говорит о высоком качестве разработанных решений.

Однако у гибридной разработки есть свои слабые места:

  • Сниженная скорость работы в отличие от нативных приложений.
  • Меньше возможностей для интеграции с «начинкой» мобильного устройства.
  • Проблематичная верстка адаптивного дизайна. Несмотря на наличие различных веб-фреймворков для построения приложений, мы столкнулись с тем, что все они по-разному ведут себя на различных девайсах.
  • Появление ряда багов, которые могут приводить к определенным нарушениям нормальной работы приложения. Во время тестирования, исходя из различного поведения приложения на разных устройствах, правка одного бага влечет за собой появление других под новыми версиями операционных систем.
  • Ограниченное представление визуальных и графических элементов, в частности, анимации.

Хотя некоторые недостатки не так существенны, низкая производительность и проблемы с анимацией могут стать ограничениями в работе с кросс-платформенными приложениями. Два популярнейших сервиса Facebook и LinkedIn в своё время работали по гибридной модели, но затем были переписаны на нативную. По отзывам разработчиков, после этого они получили двукратный прирост в производительности решений.

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

  • Стоит задача быстрой разработки приложения под более, чем 2 мобильные платформы;
  • Есть необходимость сэкономить на бюджете;
  • Требуется относительно простое приложение без сложной анимации;
  • Можно исключить поддержку множества параметров нативного функционала.

Судя по динамике развития наших мобильных проектов, мировые тенденции подтверждаются на практике – увеличивается спрос на мобильную разработку, растут скорости создания приложений, повышается интерес к несложным решениям с доступной стоимостью разработки. Всё это открывает возможности для совершенствования гибридных приложений, которые в отдельных случаях могут проявлять себя не хуже нативных. Отдавая предпочтение тем или другим, важно отслеживать состояние рынка и правильно расставлять приоритеты по скорости запуска проекта, стоимости и производительности.

Мобильные приложения: нативные, веб и гибридные

Компании, которые думают о разработке приложения (для своих клиентов или внутреннего пользования) могут выбрать один из трех вариантов мобильных приложений — нативные, веб или гибридные. Давайте проанализируем каждый тип, рассмотрим преимущества и недостатки, и определимся, какой из них будет лучшим выбором в той или иной ситуации и лучше всего удовлетворит потребности при создании мобильного приложения.

Нативные приложения

Под нативным мы подразумеваем мобильное приложение, которое создается для определенной платформы и непосредственно устанавливается на устройство пользователя (занимая определенный объем памяти). Такие приложения пользователь загружает через магазин приложений той или иной платформы, такой как Play Store для Google и Apple App Store для iOS.

С нативными приложениями компании могут изготовить приложение согласно индивидуальным запросам, чтобы затем пользователю было удобно им пользоваться, в дополнение к веб-сайту или другому каналу, которым он уже привык пользоваться. Эта целостность и является существенным преимуществом нативных приложений.

Некоторые другие важные преимущества нативных приложений:

  • — Обозначение геолокации позволяет компаниям подстраивать свои программы лояльности или промоакции. Потребители могут получать уведомления, когда они находятся возле физических магазинов, или имеют возможность получить региональную скидку.
  • — Данные действий (или бездействия) пользователя могут быть легко собраны и проанализированы, таким образом облегчая оценку эффективности всего приложения либо его отдельных функций.
  • — Нативные приложения, как правило, работают и «чувствуются» лучше. Веб-приложения иногда создаются для имитации нативных, но они ограничиваются скоростью интернета и возможностями дизайна.

И возможные недостатки:

  • — Нативные приложения зачастую более дорогие в разработке, особенно для компаний, которым нужны приложения на кроссплатформенных ОС
  • — Нативные приложения должны быть одобрены каждым магазином приложений, а процесс привлечения внимания к нему пользователей может быть сложным (если это не приложение для внутреннего пользования в компании)


Веб-приложения

Как вы уже могли догадаться, эти приложения работают через веб-браузер на устройстве пользователя. Эти приложения по сути являются индивидуализированными вебсайтами, которые сделаны таким образом, чтобы выглядеть и использоваться как нативные приложения, но на самом деле они не находятся на устройстве пользователя. Их можно сравнить с облачным хранилищем в сравнении с данными, которые хранятся на жестком диске компьютера. При хорошей, качественной разработке, которая включает в себя подбор размеров и прокрутку, веб-приложения часто работают подобно нативным приложениям.

Вот некоторые ключевые преимущества веб-приложений:

  • — Приложения на веб-основе легче поддерживаются и они могут функционировать на платформе с любой ОС
  • — Разработчики могут предлагать приложения без необходимости их утверждения какими-либо магазинами приложений
  • — Более быстрая разработка циклов с использованием CSS, HTML и JavaScript

И несколько минусов:

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

Гибридные приложения

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

Дополнительные преимущества гибридных приложений:

  • — Гибридные приложения обладают наибольшей функциональностью и персонализацией для пользователя
  • — Разработчики не ограничены одной платформой, вместо этого они могут создать гибридное приложение, которое будет работать с несколькими платформами (в случае работы как нативное приложение)
  • — Гибриды — хорошая опция для разработчиков, которые создают визуально насыщенные приложения, например, игры (которые не будут хорошо работать в виде веб-приложений)

В любом случае, есть некоторые недостатки, о которых стоит подумать при выборе гибридного приложения:

  • — Слишком сложные приложения лучше всего делать нативными
  • — Разработка требует дополнительных времени и усилий (по сравнению с веб-приложениями), чтобы такое приложение выглядело и ощущалось пользователем как нативное
  • — Магазины приложений могут отклонять гибридные приложения, которые работают недостаточно плавно

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

Подписывайтесь на наш блог и следите за нами в:

Если у вас есть вопросы или же вы хотели бы сделать запрос на разработку мобильного приложения, дизайна или адаптивного веб сайта — пожалуйста, используйте эту форму Форма обратной связи.

Гибридные и нативные мобильные приложения

Нативные приложения

«Родные», или нативные

«Родные» или, как их ещё называют, нативные приложения разработаны и написаны на языке программирования, «родном» для данной платформы: например, Android предполагает разработку только на языке Java, а вот для iOS нужно будет изучить программирование на objective-C. Эти языки изначально утверждаются разработчиками ПО – индивидуально для каждой платформы. Нативные приложения распространяются только через официальные магазины – PlayMarket или, например, AppStore, а затем устанавливаются на смартфон.

Отличительные черты:

  • могут обращаться к микрочипу телефона, камере или микрофону, запрашивать данные геолокации, пользоваться адресной книгой и т.д.
  • работают даже без подключения к сети;
  • отлично оптимизированы под каждую ОС;
  • учитывают возможности каждого мобильного устройства.

Что такое гибриды?

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

Отличительные черты:

  • распространяются так же, как и нативные приложения, через официальные магазины, но могут обновлять ту или иную информацию автономно;
  • веб-функции гибридов не работают при отсутствии подключения к сети;
  • гибриды обеспечивают технологическую актуальность и долговечность приложения при сохранении многих преимуществ нативных разработок.

Преимущества и недостатки нативных и гибридных мобильных приложений

Доступ к функционалу устройства Скорость работы Распространение через магазин Работоспособность
Нативное абсолютный высокая есть экономит энергию, стабильно работает
Гибридное неполный средняя (зависит от скорости интернета) есть неэффективно использует ресурсы устройства; работают нестабильно

Нативное

1) работают максимально быстро, обладают высокой функциональностью;

2) работоспособны и без подключения к сети;

3) могут использовать ПО смартфона (обращаются к «железу» — микрофону, например, экрану, адресной книге и т.д.);

4) распространяются только через официальные магазины.

1) стоимость и сроки разработки такого приложения намного выше, чем у гибридов;

2) разработчику необходимо уметь программировать на соответствующем платформе языке;

3) для каждой платформы – свой код;

4) любые изменения, даже незначительные, косметические, нуждаются в выпуске обновления.

Гибридное

1) обладают многими функциями нативного приложения – и универсальны для нескольких платформ;

2) не нуждается в запуске из браузера – открывается прямо с мобильного устройства;

3) как и нативные приложения, распространяется через магазины.

1) необходимо соответствовать требованиям магазинов приложений;

2) знание разных API – необходимость для разработчика гибридов.

Итого: вам стоит отдать предпочтение нативному мобильному приложению, если:

  • вы отдаёте предпочтение высокой скорости работы приложения и знаете, что ему понадобится доступ к «железу» смартфона;
  • необходим высокий уровень безопасности;
  • вы ведёте работу над каким-либо крупным проектом.

В остальных случаях достаточно будет и гибридного мобильного приложения. Оно позволит сэкономить деньги и время на своей разработке и внедрении, но не даст всех преимуществ нативного приложения.

Гибридные, Нативные и Мобильные Web приложения: взгляд изнутри

Примерно 2 года назад я захотел приобрести микрофон. Как обычно, перед покупкой я посмотрел несколько обзоров наиболее популярных моделей, узнал о тех характеристиках, которые отличают микрофоны, и зашел на сайт магазина, где собирался приобрести аппарат. Мой выбор пал на модель М1 (дабы исключить обвинения в рекламе и продакт-плейсменте заменим название микрофона). Эта модель была в двух комплектациях: обычный микрофон и вариант с USB-подключением, который стоил дороже. Кроме этого, эти две вариации ничем не отличались. Хорошо, берем деньги и идем в магазин. В магазине на витрине лежали обе модели. Я выловил девушку-консультанта и попросил показать понравившийся мне микрофон. «А не хотите взять эту модель?», — спросила девушка, показывая на более дорогой вариант с USB. «Разве она чем-то лучше? Именно в плане звука?» Девушка подумала немного: «Да, конечно лучше!». Мой совет: не верьте продавцам!

Но кому же верить? Когда мы хотим купить товар или услугу, мы общаемся именно с продавцами, которые, к сожалению, не являются экспертами в данном вопросе. На мой взгляд, выход в этой ситуации один. Взять все в свои руки и самому, хотя бы поверхностно, разобраться в интересующем Вас вопросе или найти профессионала в в данной области и узнать его мнение. Давайте так и сделаем. Вопрос, в котором мы будем разбираться звучит так: «Что лучше — нативные или гибридные приложения для мобильных платформ?».

Гибриды против натуралов


Чтобы с чего-то начать, давайте прибегнем к проверенному и надежному способу — загуглим интересующую нас проблему. Гугл выдает десятки статей, написанных словно под копирку. Различного рода блогеры, программисты, менеджеры, рекламщики, мамы рекламщиков, бабушки менеджеров и прочие люди, которые «отлично» разбираются в этом вопросе, пытаются интересно, индивидуально и с юмором донести до нас следующие вещи:

  1. Существуют чистые веб-приложения, которые выглядят почти как нативные. Например, app.ft.com. Их следует отделять от гибридных.
  2. Чистые веб-приложения без сети не работают.
  3. Интересное наблюдение: контент чистых веб-приложений легче искать. Просто вбейте интересующий вас запрос в поисковике и, если Google вас любит, пользователь увидит именно ваш сайт на первой странице поисковой выдачи.
  4. Еще одно интересное наблюдение: гибридные и нативные приложения должны соответствовать определенным правилам, для того чтобы их можно было опубликовать в AppStore или GooglePlay. С другой стороны, вы вполне можете запилить свой уютненький сайт-приложение с чернухой и вырвиглазным дизайном, и вам слова никто не скажет.
  5. Трудозатраты при написании гибридных приложений меньше, в сравнении с нативными, так как весь код пишется сразу на все платформы.

Да и разработчиков нужно меньше. Просто найдем пару крепких парней, которые знают HTML и JavaScript. Они нам все и напишут. А то ищи всяких Java, С#, С++, Objective-C разработчиков и потом еще всей этой ораве деньги плати.

  • Поддержка гибридных приложений обходится дешевле, так как, опять же, вроде как код один для всех платформ. Меняем в одном месте — и готово.
  • Нативные приложения работают гораздо быстрее гибридных и веб-приложений.
  • Нативное приложение может работать со всеми компонентами устройства, тогда как у гибридных и веб приложений этот доступ ограничен. Например, доступ к камере в нативных приложениях — это нечто само собой разумеющееся. А вот чтобы гибрид вашей камерой пофоткал — это нужно извернуться.>
  • При разработке нативных приложений мы получаем оригинальный UI для каждой платформы. Гибридные и веб этого не могут.
  • Срываем покровы

    Казалось бы, теперь мы знаем, чем отличаются гибридные и нативные приложения. На этом можно спокойно закончить статью и заняться делом — идти писать код. Но нет! Мы же помним: «Не верьте продавцам!». А большая часть людей, которые писали все эти пункты — именно продавцы, в той или иной форме. Так что, разбираемся дальше.

    Веб-приложения

    Сама идея сайта, который выглядит как приложение, — это, конечно, интересно. У этого подхода есть как минусы, так и определенные плюсы. Но есть один большой вопрос: «Зачем?». Представьте, что вы пользователь, не обремененный особыми познаниями в IT-технологиях. Открываете вы какой-то сайт и … О, Боже! У меня открылось приложение! Демоны! Это, наверное, вирус какой-то! Хотя стоп, а почему строка браузера видна? Это сайт что-ли такой? Или все-таки приложение? Хм, в списке установленных его нет. Работает он ужасно медленно. Установлю-ка я лучше нормальное приложение, а не это не пойми что.

    В общем, не совсем понятен смысл всей этой мимикрии. Зачем вводить пользователя в заблуждение? Ведь кто-то может поверить, что это — приложение, и ожидать поведения, соответствующего обычному приложению. Хочется привести следующее сравнение: найдем здоровый камень круглой формы и покрасим его так, чтобы он выглядел как футбольный мяч. А потом спросим первого же горе-футболиста со сломанной ногой про его впечатления от нашего оригинального дизайнерского хода.

    Гибриды

    Так как опыта работы с PhoneGap и с другими фреймворками подобного рода у меня не особо много, то я решил обсудить этот вопрос с нашим JS/HTML разработчиком, который писал программу при помощи фреймворка PhoneGap. Оказывается, на данный момент большая часть описанных проблем решена. На этой страничке переодетый Черный Властелин обещает нам, что теперь реакция на клики будет проходить быстро и безболезненно. Существует вагон и маленькая тележка различных плагинов, которые позволяют получить доступ к различным системам целевого устройства. А если чего и нету, то можно свой плагин написать. И кажется, что вот оно — отличное решение для кросс-платформенной разработки мобильных апп! Но давайте задумаемся поглубже над этой проблемой.

    Что это за волшебные пилюли — плагины, которые решают все проблемы? Может, это какая-то магия? К сожалению, магии в нашем мире нет. По крайней мере, в IT. Плагины — это JavaScript обертки над нативным кодом Android или iOS. То есть, по сути, PhoneGap — это GUI, который на самом деле является веб-приложением, выполняемым в WebView. Логическая часть программы, выполняющаяся при помощи плагинов, которые на самом деле являются вызовами нативного кода через JavaScript, взаимодействует с устройством. Теперь, зная составляющие фонгап приложения, мы можем порассуждать о том, как все это будет работать.

    1. Что ты знаешь о боли? WebView для Android версии 4.3 ужасно тормозит, когда требуется показать что-то чуть более сложное, чем текстовую инфу. В версии 4.4 движком для WebView стал Chromium, так что, возможно, это немного исправит ситуацию. В целом, для всех фонгаперов и иже с ними это означает боль и страдание при попытке запустить приложение на Android. На iOS ситуация с этим намного лучше, так как движок на сафари работает получше.
    2. — Простите, вы женщина? — Я буду кем ты захочешь, малыш. В зависимости от девайса, для интерфейса приложения могут применяться разные стили. Это, конечно, не плохо, но логики дизайна не меняет. Есть кнопка Назад» на iOS — значит, будет она и на Android. И не важно, что она там никому не нужна. Еще один пример — Actionbar. На iOS он традиционно находится внизу экрана, на Android — в верхней части экрана. В приложении на PhoneGap у вас Actiobar не будет менять положение в зависимости от девайса, он будет просто выглядеть по-разному. И еще один момент: каждая OC имеет определенные особенности. Например, анимация. Посмотрите на iOS и Android. Анимация переходов между экранами. Она разная! Гибридные приложения не смогут воспроизвести эти особенности.
    3. Разруха не в клозетах, а в головах. Еще один важный фактор, который почему-то никто не учитывает. Разработчики на PhoneGap — это обычно Фронт-енд разработчики. Они понятия не имеют о том, как должен выглядеть интерфейс под Android или iOS, так как не читали стайл-гайды. Они ничего не знают об особенностях платформы, потому что не читали документацию. Но они хорошо умеют делать сайты. Соответственно, вы получите приложение, похожее на сайт. Оно вам надо? Точно надо? Посмотрите на эту картинку? Вы все еще уверены в своем выборе?
    1. Гномики? Это вы? Далее к плагинам. Это просто куски кода, которые решают некоторые задачи. Вы также можете использовать их в нативном приложении. Проблема в том, что зачастую ваше приложение должно решать задачи, которые чуть-чуть, самую малость, отличаются от тех, что решают эти куски кода. То есть, их нужно будет менять, но кто это будет делать? Ваш разработчик знает только JavaScript и HTML. Еще один тонкий момент — совмещение плагинов от разных разработчиков. Если плагины работают в смежных областях, они вполне могут использовать одни и те же компоненты. За счет этого можно получить интересные побочные эффекты. И последний камень в огород плагинов: некоторые из них не особо популярны и, как следствие, плохо оттестированы. Будьте готовы к тому, что вам самим придется выступить в роли тестировщика.

    В общем, что я хочу сказать? Кроссплатформенность в данном случае мнимая, и приложения будут выглядеть странно. Я думаю, гибридные приложения стоит использовать в качестве прототипов, на которых можно оценить реакцию пользователей на вашу идею и получить некоторый фидбек. Для продакшн-версии лучше все-таки использовать нативные приложения. Эти рассуждения актуальны для всех гибридов, работающих на связке HTML/JS.

    Нативные

    Про нативные ничего особо писать не буду. Тут и так все понятно. Быстро работают, хорошо выглядят, широкие возможности кастомизации. И стоят они соответствующе. Хотя первые три пункта актуальны, только если вы не наняли команду крепких профессионалов с семилетним опытом работы из Нью-Дели.

    Тру кроссплатформенность

    На мой взгляд, едиственный фреймворк, который может действительно позволить вам написать кроссплатформенное мобильное приложение в данный момент — это С++ Qt. Этот фреймворк генерит нативный Android код с использованием Android NDK. Поэтому производительность должна быть на уровне кода, написанного программистом при помощи Android SDK, а для фрагментов, использующих тяжелые расчеты еще и выше — за счет NDK. Qt — это качественная, протестированная библиотека. Это означает, что вы не будете в процессе ловить какие-то левые баги. В случае какой-либо проблемы, вы можете взглянуть на исходники Qt. Это, действительно, очень нужная возможность для разработчиков. В некоторых случаях это единственный способ побороть баг. Для того, чтобы получить программу для целевой платформы (Android или iOS), вам нужно просто перекомпилировать исходники. Хотя, насколько я знаю, иногда все-таки придется писать нативный код для платформы, т. к. не все возможности доступны через библотеки Qt. Надеюсь, это вскоре будет исправлено.

    Но есть и минусы. Для продакшн-разработки вам придетcя приобрести лицензию Qt — что, соответственно, стоит денег. Для начинающих разработчиков это серьезная проблема. К тому же, на данный момент, Qt для мобильной разработки все еще сыроват. Ждем следующих релизов.

    Вывод

    На данный момент не существует средства, которое можно было бы с чистой совестью назвать настоящей кросплатформенной средой для разработки мобильных приложений. Возможно, в будущем, это место займет Qt, но на данный момент оно вакантно. Для проверки своей идеи посредством разработки прототипа, вы вполне можете использовать различные JS/HTML фреймворки, но я бы не советовал их применять для разработки сложных продакшн-приложений. В этой сфере разработки альтернативы нативным приложениям в данный момент нет.

    Гибридные мобильные приложения — миф или реальность? Часть 1

    Введение

    Мои коллеги часто задаются вопросом: ”Сколько мы еще будем писать под разные платформы отдельно?”. Им конечно нравится разрабатывать под iOS на Obj-C или на Java под андроид, но снова и снова возникает вопрос о необходимости иметь в своей команде специалиста в обоих направлениях. Иначе вы не сможете дать доступ к сервисам всем вашим потенциальным клиентам.

    Если вы хотите достичь большей аудитории, потому что ваши заказчики просят об этом или вы не хотите пропустить доход от миллионов возможных пользователей, вам нужно будет сделать ваше приложение доступным (по крайней мере на двух платформах).

    Начните разрабатывать гибридные приложения, которые облегчат сложность разработки для нескольких платформ одновременно. Гибридное направление предполагает разработку приложений как веб-приложений, которые работают в браузере, а затем обертывание их таким образом, что они работают как родные приложения на мобильных операционных системах, таких как IOS, Android или Windows Phone. В дополнение к одной основной полученной кодовой базе, которая значительно упрощает управление жизненным циклом вашего приложения, гибридизованные версии веб-приложения могут быть зарегистрированы с App Store компании Apple или Play Store компании Google.

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

    1.2 Наступило время фреймворков

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

    Ответ — AngularJS.

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

    Ответ — Cordova

    Давайте объединим эти два удивительных механизма, и мы получим — Ionic Framework.

    1.3 Почему именно Ionic

    Ionic сочетает AngularJS (JavaScript) с HTML5 + CSS и использует Cordova, чтобы получить доступ к родным функциям устройства. Кроме того, он бесплатный, количество разработчиков и их поддержка растет с каждым днем.

    Так что в целом, Ionic предлагает большие возможности для создания гибридных приложений, которые не только удивительно выглядят, но также ведут себя так естественно, как родные приложения и разработаны всего на одной общей базе кода.

    В следующей части этой статьи будет рассмотрено как Ionic приложения могут заменить большинство из того, что вы ежедневно используете. Мы расскажем вам, как легко заменить хорошо известные компоненты из родного IOS или Android с помощью HTML5 и JavaScript, какая у них общая структура и как выглядит то, что вы можете достичь с гибридным подходом разработки.

    Нативные, веб и гибридные приложения: что выбрать?

    07 Декабря, 2015

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

    Однако, все возрастающая популярность приложений привела к появлению различных типов оных: на рынке есть нативные, гибридные, веб приложения — что, в свою очередь, породило еще одну головную боль — какой же тип выбрать? Что ж, это именно тот вопрос, на который мы постараемся ответить в данной статье, чтобы помочь вам принять взвешенное решение с учетом всех “за” и “против” каждого типа приложений.

    Для начала, давайте повторим основы…

    Что такое нативное приложение?
    Нативное приложение — это приложение, доступное лишь на одной платформе и ни на каких других, например, приложение, которое доступно только для iPhone или телефона на базе Android.

    Что такое веб приложение?
    Веб-приложения, опять же, доступны только на одном устройстве, но на этот раз — на компьютере / в веб-браузере. Это, по существу, оптимизированный для мобильных устройств сайт.

    Что такое гибридное приложение?

    Гибридное приложение, если вы еще не догадались, — это сочетание того и другого. Гибридные приложения, как правило, разрабатываются с использованием Javascript и HTML5 для веб-приложений, и впоследствии трансформируются в мобильные.

    Теперь давайте сравним различные аспекты всех этих типов приложений.

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

    Разработка нативных приложений потребует от вас наибольших денежных вложений, при условии разработки для нескольких платформ. Возможно, у крупных компаний не возникает проблем с созданием приложения сразу для iOS и Android, а возможно, и для Windows phone, но вот для небольших компаний это может оказаться губительным.


    Стоимость разработки гибридного приложения обычно на 20-30 % выше стоимости нативного приложения для одной платформы. Т.е. гибридное приложение будет стоит на 20-30 % больше, чем приложение только для Android, например.

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

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

    Производительность

    От производительности непосредственно зависит впечатление пользователей от работы с вашим приложением. После того, как вы потратили уйму времени и усилий на запуск и маркетинг вашего приложения, вы, наверняка, захотите, чтобы оно работало хорошо, не так ли?

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

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

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

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

    После того как вы разработали приложение, его распространение становится самым важным аспектом вывода на рынок. Это, по сути, дорога, которой вы идете к успеху вашего приложения.

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

    Вы даже можете появиться на главной странице, если дела у вашего приложения идут хорошо. Но (да, похоже, всегда есть «но») существует много различных требований и ограничений при размещении приложения в магазине, которые часто не позволяют людям и компаниям размещать рекламу и создавать приложения в том виде, в котором они хотели бы.

    Веб приложения имеют свои преимущества: вы можете запустить свое приложение на своих собственных условиях и безо всяких ограничений относительно того, как вы его рекламируете (в пределах разумного, конечно). Главный недостаток при этом заключается в том, что в данном случае у вас нет никаких выгод, получаемых при наличии приложения в магазине.

    Повторное использование кода

    Возможность повторного использования кода — важный фактор при разработке приложения: если один и тот же код может быть использован для размещения приложения на двух отдельных платформах, — считайте, что вы сохранили много денег.

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

    В гибридных приложениях, после программирования, с помощью определенных инструментов код может быть перенесен на основные мобильные платформы, такие как iOS и Android. Истинная ценность гибридных приложений проявляется в игровых платформах, например, 2DX или unity.

    Что же касается веб приложений, то после того, как код был написан, большинство браузеров следуют общим правилам. Вам лишь остаётся беспокоиться о совместимости браузера и производительности. Так что это можно отнести не просто к плюсам, а к «ожидаемым» плюсам.

    Монетизация может считаться наиболее важным аспектом на стадии, когда приложение уже разработано. Поэтому вам нужно знать, насколько легко приложение можно монетизировать.

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

    Также у вас есть возможность появления на главной странице, а также различные возможности для платной рекламы, которые веб приложения не предоставляют. Ваше приложение также можно рекламировать онлайн или на определенных мобильных устройствах, с помощью кампаний в Facebook или Google Adwords, где ограничения минимальны.

    Тем не менее, вы должны помнить, что магазины приложений берут процент от заработка.

    Веб приложения, к сожалению, не предоставляют никаких «бесплатных» методов монетизации, и их реклама зависит в основном от вас.

    Если у вас есть план платной рекламы приложения с помощью других ресурсов, то это не должно стать проблемой. Кроме того, можно не бояться комиссий магазинов приложений, так что это еще один плюс.

    Результаты

    После рассмотрения особенностей трёх типов приложений, давайте подведет итоги и еще раз подчеркнем наиболее важные пункты. Что касается стоимости, то, если деньги не проблема, гибридные или нативные приложения могут принести отличные результаты.

    Тем не менее, если вы хотите сэкономить и чувствуете, что у вашей идеи есть все шансы стать популярной, разработка веб приложения — идеально решение для вас.

    С одной стороны, вам гарантированна отличная производительность нативных приложений, а с другой — более дешевый быстрый способ получить отдачу от вложенных средств посредством разработки гибридых приложений, но они же могут и привести к сложностям, не зависящим от вас.

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

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

    Вот несколько дополнительных замечаний, основанных на нашем опыте:

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

    Гибридные приложения желательно использовать для веб-приложений без глубокого аппаратного обеспечения или системной интеграции, или для автоматизации бизнес-процессов, когда сотрудники или клиенты уже пользуются услугами компании. Тем не менее, они не подходят в качестве таких приложений, как мессенджеры или социальные сети.

    И, наконец, нативное приложение — очевидный выбор для брендовых приложений, от которых ожидают отличной работы и положительных отзывов, являющихся неотъемлемой частью успеха проекта.

    Самое главное — постоянно помните о том, кто ваша аудитория и какова цель вашего приложения.

    Мы надеемся, что дали вам более полное понимание различных видов приложений, и теперь вы сможете принять взвешенное решение, которое приведет вас к успеху.

    Нативные vs. гибридные приложения

    *В этой статье мы рассматриваем гибридные приложения на основе веб-браузера.

    Нативное или гибридное — вот в чем вопрос. Чтобы сделать правильный выбор, нужно четко понимать, что из себя представляет каждый тип приложений и для каких целей он служит.

    Интересно! Согласно статистике от Flurry Analytics 90% всего времени за телефоном мы проводим именно в приложениях.

    Несмотря на то, что у каждого типа есть свои ярые сторонники, нативные и гибридные приложения дышат в спину друг другу, и сложно выбрать безоговорочного победителя.

    Имея многолетний опыт разработки нативных и гибридных приложений, Umbrella досконально изучила особенности обоих типов. В этой статье мы постарались собрать основные преимущества и недостатки нативов и гибридов, чтобы вам было проще сделать правильный выбор.

    ГИБРИДНЫЕ И НАТИВНЫЕ ПРИЛОЖЕНИЯ

    Итак, чем же отличаются эти два типа приложений друг от друга?

    Нативное приложение является родным для каждой платформы, будь то iOS или Android, и пишется специально для него на определенном языке.

    Для написания нативного приложения для iOS будет использоваться Swift или Objective-C. Для нативных Android приложений подойдут Java или Kotlin.

    Однако согласно статистике от VisionMobile, 47% всех нативных iOS приложений и 42% всех нативных Android приложений на самом деле также используют HTML5.

    А вот и пример нативного приложения:

    Известное во всем мире приложение для электронной торговли Bounce было написано нашими разработчиками на языках Swift для iOS и Java для Android.

    Приложение доступно в Apple Store и Google Play .

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

    Познакомиться с гибридами вы можете на примере другого нашего приложения, распространенного на западном рынке, — LASIK для онлайн поиска хирургов и записи на прием.

    Приложение доступно в Apple Store и Google Play .

    Давайте рассмотрим поближе каждый из типов и узнаем их самые сокровенные тайны. А начнем, пожалуй, с двуликих гибридных приложений.

    ПЛЮСЫ ГИБРИДНЫХ ПРИЛОЖЕНИЙ

    • Экономия. Если вы не готовы опустошить свой кошелек в погоне за идеальным приложением, а хотите получить простое приложение по доступной цене, тогда гибрид – ваш вариант. Только подумайте, сколько вы сэкономите, создав одно приложение для двух платформ сразу!


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

    МИНУСЫ ГИБРИДНЫХ ПРИЛОЖЕНИЙ

    • Непрактичность. Даже хорошо проработанное гибридное приложение может быстро устареть. Прогресс не стоит на месте, и владельцы приложений стараются шагать в ногу с ним. Как только появляются новые технологии, каждый из владельцев старается как можно скорее добавить диковинную функцию и в свое приложение. К несчастью гибридов, потребуется от 3 до 6 месяцев, чтобы изменить фреймворк и добавить в него новый функционал. Только после этого разработчики смогут усовершенствовать и ваше приложение тоже. В нативных же приложениях нововведения можно добавлять сразу после их анонсирования.

    Маловероятно, что наше приложение будет пользоваться спросом у юзеров, если оно получится некачественным и нестабильным:

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

    • Низкая скорость. Зачастую гибридные приложения представляют собой веб-страницы, которые не особо расторопны, например, в скроллинге тяжелого контента: картинок, анимаций и т.д.

    Скроллинг — вертикальная или горизонтальная прокрутка страницы.

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

    Компиляция — процесс перевода высокоуровневого языка программирования (PHP, Java, JavaScript) в машинный.

    • Трудности дизайна. Если вы хотите, чтобы вид вашего приложения соответствовал профессиональному и хорошо-проработанному системному дизайну каждой из платформ, будь то iOS или Android, вам придется разрабатывать дизайн для обеих операционных систем по отдельности. iOS и Android приложения имеют свои собственные, уникальные стандарты дизайна, а так как гибридное приложение не отвечает им, его вид придется «подгонять» под соответствующие рамки. Получается, по окончании работы вы получите только одно приложение, а времени и денег вы потратили как на два.
    • Незащищенность исходного кода. Одним из серьезных минусов гибридных приложений является их небезопасность. В то время как нативное приложение может быть зашифровано перед выходом в официальный магазин, гибридное приложение остается “голым”. Поскольку в основе многих гибридный приложений лежит HTML страница, то ничего не стоит посмотреть ее исходный код и понять, как работает само приложение.Как минимум, ваш код может быть украден. Как максимум — взломщик может использовать ваше приложение в своих корыстных целях, например, получить приватную информацию и данные о приложении.

    ПЛЮСЫ НАТИВНЫХ ПРИЛОЖЕНИЙ

    • Высокое качество. Узко-специализирующийся разработчик нативных приложений напишет вам чистый, уникальный код. Многолетний опыт разработки и четкие стандарты нативных iOS & Android приложений помогут сделать качественный продукт с широким функционалом и снизить риск появления багов практически до минимума.
    • Низкая вероятность отказа в размещении в App & Play Stores. Поскольку нативное приложение изначально отвечает стандартным требованиям определенной платформы, маловероятно, что вы столкнетесь с какими-либо проблемами при запуске вашего приложения в официальных магазинах App Store и Play Store.
    • 100% использование UX дизайна. Современные пользователи избалованы яркими, детально-проработанными интерфейсами, и простые, стандартизированные приложения навряд ли заинтересуют их. Именно в нативной разработке UX дизайн используется на все 100%, что позволяет сделать качественное и интересное приложение. В гибридном приложении вы получите стандартизированный для двух платформ интерфейс.
    • Разнообразие инструментов для разработки. Благодаря многолетнему опыту разработки нативных приложений появилось огромное количество различных фреймворков, шаблонов и других проверенных инструментов, которые позволят сделать ваше приложение уникальным, индивидуальным и стабильным.
    • Большое сообщество разработчиков. Ну и конечно же, разрабатывая нативное приложение, вы навряд ли столкнетесь с проблемой, которую никто не решал до вас. А это значит, что вам не придется тратить лишнее время на поиск подходящего решения, а можно будет обратиться к опыту других программистов.

    МИНУСЫ НАТИВНЫХ ПРИЛОЖЕНИЙ

    • Стоимость. Как говорится, бесплатный сыр только в мышеловке. Нативное приложение — это уникальный, качественный продукт, для создания которого требуется немало времени и, конечно же, высококвалифицированный разработчик с многолетним опытом. Поэтому и стоит такое приложение соответственно.

    ИНТЕРЕСНЫЙ ФАКТ

    Вы удивитесь, когда узнаете, что на самом деле разработать нативное iOS приложение стоит дешевле гибрида . Не верите? Смотрите сами!

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

    В случае с гибридом — вам остается надеяться, что на тот или иной нативный инструмент существует адаптация на базе фреймворка, выбранного для гибридной разработки.

    Если же такого инструмента нет — вам придется либо ждать его появления, либо рассматривать альтернативные фреймворки, то есть мороки с гибридом гораздо больше.

    Исходя из этого, получается, что, создать одно нативное iOS приложение дешевле, чем одно гибридное iOS приложение .

    Если же сравнивать разработку гибридного приложения и двух нативных, то цена гибрида будет ниже, как и ожидалось, ведь в гибридном приложении backend и frontend подходят для двух платформ сразу.

    В нативном приложении нужно разрабатывать два отдельных frontend’а, отвечающих общепринятым стандартам каждой из платформ.
    Отсюда такие расценки:

    HYBRID iOS APP — $11.5K
    HYBRID iOS + Android APPS
    $12.5K

    NATIVE iOS APP — $10K
    NATIVE iOS + Android APPS
    $18K

    Однако если присмотреться внимательно, можно заметить, что стоимость нативных приложений ненамного превышает стоимость гибридного.

    Вот теперь и думайте, экономить ли при разработке одного приложения, или нет? А может сразу сделать два нативных?

    Ведь для пользователей очень важен как внешний вид приложения, так и насколько удобным и качественным оно будет.

    КАКОЕ ПРИЛОЖЕНИЕ ВЫБРАТЬ?

    Исходя из вышеперечисленного, мы советуем вам обратить пристальное внимание на цели, которые вы преследуете, и делать свой выбор, отталкиваясь от них.

    В этом случае вы будете на 100% уверены, что деньги потрачены не зря и в результате вы получите именно то приложение, которое заказывали.

    ИТАК ,

    Выбирайте гибридное приложение , если вы хотите получить:

    • простое приложение
    • приложение для двух платформ по бюджетной цене
    • 1 приложение с возможностью быстрого выхода на два рынка (ios/Android)

    Выбирайте нативное приложение , если вам нужно:

    • профессиональное приложение, соответствующее всем стандартам выбранной платформы
    • сложное приложение с широким функционалом
    • приложение с высокой скоростью работы

    Теперь, когда вы знаете о нативных и гибридных приложениях все и даже больше, вы сможете с легкостью сделать правильный выбор.

    Воплотите все ваши самые смелые мечты и идеи в реальность вместе с Umbrella .

    Разработка гибридных мобильных приложений

    IonicFramework — это SDK с открытым исходным кодом для разработки гибридных мобильных приложений с использованием веб-технологий.

    Производительность

    Скорость имеет значение. Настолько, что вы точно заметите, когда ее нет. Ionic без проблем будет работать на последних мобильных устройствах. С минимальными манипуляциями DOM, без jQuery и без аппаратного ускорения.


    Angular & Ionic

    Ionic использует Angular для создания мощного SDK, который отлично подходит для разработки надежных приложений с широкими возможностями.

    Ориентированность на нативную разработку

    Ionic создан по моделям популярных SDKs для разработки нативных мобильных приложений, что снижает порог вхождения для тех, кто создавал приложения на iOS или Android. Просто адаптируйте ваш код и пропустите его через Cordova.

    Красивый дизайн

    Ясный, простой и функциональный. Ionic спроектирован так, чтобы хорошо выглядеть на всех мобильных устройствах. Учитывая массу популярных мобильных компонентов, верстку, интерактивные элементы и прекрасную (все еще расширяемую) базовую тему, вы удивитесь, как раньше жили без этого.

    Мощный CLI

    С помощью одной команды вы можете создавать, тестировать и устанавливать ваши приложения на любую платформу. Благодаря отличным функциям вроде Live Reload и интегрированным ведением журнала, вы будете уже на шаг впереди ваших заклятых нативных друзей. Просто запустите npm install -g ionic, и вы готовы!

    Простота в освоении

    Все, что вам нужно знать — это HTML, CSS и JavaScript. По мере работы вы даже освоите AngularJS. Мы написали массу учебного материала, который поможет начать и поднять уровень ваших навыков в разработке мобильных приложений. Вы сможете в два счета создавать приложения.

    Создан гиками (вроде вас)

    Фреймворк создали и поддерживают разработчики и дизайнеры, которые одержимы веб-технологиями. С нами мобильная разработка с HTML5 становится увлекательной и простой.

    Больше, чем просто фреймворк.

    Ionic Lab

    Создание и тестирование IOS и Android версии приложения.

    LiveReload

    Тестирование приложения в режиме реального времени.

    Icon/Splash Generation

    Генератор иконок и заставок для разных устройств.

    View App

    Демонстрация разработанных приложений для ваших клиентов, пользователей и тестировщиков по всему миру.

    ngCordova

    Angular выражения для быстрого доступа к нативным функциям устройсва.

    Платформа Ionic

    Полный набор серверных сервисов и инструментов для разработки мобильных приложений.

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

    Hampton Catlin Creator of Sass

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

    James Tamplin Co-founder & CEO, Firebase

    Я был очень рад, когда обнаружил Ionic. Он заполняет ту брешь, которая образовалась в создании приложений под мобильные устройства, и решает многие сложности, которые иначе требуют подключения множества библиотек. А это сохраняет код чистым. В общем, он делает разработку мобильных приложений увлекательной и быстрой, что вдохновляет на дальнейшее творчество!

    Holly Schinsky Developer Evangelist, Adobe

    Android — Разработка Гибридных мобильных приложений

    Большинство моих друзей ни на секунду не расстаются со своими смартфонами или планшетами: прочитать новости, посмотреть пробки, узнать погоду и проверить почту — хорошо знакомый многим из нас сценарий обыкновенного утра. Мой муж, например, напевает в душе исключительно под звуки радио-приложения, установленного на его телефоне.

    Очевидный рост числа пользователей мобильных устройств неизменно влечет за собой бурное развитие рынка мобильных приложений. Неудивительно, что владельцы бизнеса также стремятся стать «мобильнее».

    Если человек уже принял решение о необходимости создания мобильного приложения, один из следующих этапов — определиться, какой тип приложения выбрать. Будет ли это нативное приложение? Или лучше выбрать веб-приложение? Что такое гибридное приложение, и почему его предлагают? Если Вам не понятно, о чем это я, то эта статья для вас. Если понятно, то вы сможете систематизировать свои знания или укрепиться в своем правильном выборе. И, при желании, написать мне о своем мнении или задать вопросы.

    Итак, из этой статьи Вы узнаете:

    Какие бывают мобильные приложения;

    Какие преимущества Вы получаете при выборе определенного типа приложений;

    Какие существуют ограничения у разных типов приложений;

    Какое приложение подойдет именно вам в конкретной ситуации.

    Нативные приложения

    Нативные приложения загружаются через магазины приложений (App Store, Google Play или его аффилиаты, магазин приложений Windows и т.д.) и устанавливаются в ПО смартфона. Важным отличием является то, что нативные приложения разрабатываются специально под конкретную платформу (например, под iOS для iPhone, под Android для устройств под управлением ОС Android или под Windows для Windows Phone и т.д.) и требуют от разработчика специальных знаний и умений для работы в конкретной среде разработки (xCode для iPhone, eclipse для устройств на Android); более того, используется только «родные» языки программирования для написания таких приложений. Естественно, сам процесс при этом более трудоемкий.

    Таким образом, нативные приложения всегда «заточены» под конкретную ОС и органично выглядят на смартфоне. Такие приложения с легкостью могут использовать все функции ПО смартфона (камера, микрофон, акселерометр, геолокация, адресная книга, плеер и т.д.), и при этом более бережно расходуют ресурсы телефона (аккумулятор, память). В зависимости от назначения приложения предполагают или не предполагают наличие интернет-соединения.

    Первый пример — приложение Shazam, осуществляющее определение и поиск информации об играющей на другом устройстве песне (в App Store, в Google Play):

    • Устанавливается из магазина приложений;
    • Для работы необходим доступ в интернет;
    • Использует диктофон телефона.

    Второй пример — не менее известное приложение Instagram (описание и ссылки для скачивания в магазинах):

    • Устанавливается из магазина приложений;
    • Для работы также необходим доступ в интернет;
    • Использует ПО смартфона: камера, геолокация, адресная книга; Можно включить получение push-уведомлений.

    Веб-приложения, или приложения на html5

    Веб-приложения не случайно называют html5-приложениями. Это, по сути, сайт, оптимизированный под смартфон. Пользовательский интерфейс создается при помощи стандартных веб-технологий. Их не нужно загружать из магазина приложений, но они могут находиться в специальных магазинах веб-приложений, которые есть у некоторых современных браузерах, например у Chrome. Веб-приложения используют для работы браузер телефона. Главной особенностью таких приложений является их кроссппатформенность — возможность работать на всех устройствах, без дополнительной адаптации.

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


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

    Дело в том, что веб-технологии развиваются так стремительно, что разница начинаетnразмываться, и сайты все более становятся похожими на веб-приложения. Разницу, хотя и спорно, можно по-простому описать так: сайт представляет собой в большей степени статическую информацию (по сути, цифровая брошюра или листовка); а если пользователь с этойnинформацией может взаимодействовать (менять тексты местами, менять оформление, создавать

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

    Здесь осталось только заметить, что не все веб-приложения оптимизированы под мобильные телефоны. Что, конечно, не может быть нашим случаем.

    Гибридные приложения

    Гибридные приложения сочетают в себе некоторые функции нативных и веб-приложений: кроссплатформенность и возможность использования ПО телефона. Такие приложения могут быть загружены через магазины приложений, и при этом имеют возможность независимого обновления информации. Гибридные приложения требуют подключения к интернету, поскольку веб часть обновляется через интернет. Это, наверное, самый популярный способ построения мобильных приложений, так как у него органическая среда распространения, но разработка происходит быстрее и дешевле, чем в случае с нативными приложениями, так как, хотя оболочка и написана на «родно» языке программирования, «начинка» может быть написана в том или ином объеме на html5. Пользователь же скорее всего не заметит разницу между нативным приложением и гибридным.

    Примеры гибридных приложений:

    1. Приложение HeartCamera для iOS, позволяющее украсить фотографию рисованными сердцами и т.п.

    • Загружается из магазина;
    • Использует камеру телефона;
    • Необходимо подключение к интернету при желании поделиться результатом своей работы;
    • Можно настроить push-уведомления.

    2. Приложение TripCase — органайзер для планирования путешествий. (Ссылки для скачивания в магазинах доступны на сайте )

    • Загружается из магазина;
    • Может использовать геолокацию;
    • Необходимо подключение к интернету;
    • Может использовать сотовую сеть;
    • Можно настроить push-уведомления

    Таблица преимуществ и недостатков

    Преимущества Недостатки

    Нативное

    Максимальная функциональность и скорость работы

    Не требуется интернет- соединение для использования

    Имеет доступ к ПО смартфона (GPS, плеер, камера) Распространение через магазины приложений

    Выше стоимость и длиннее сроки разработки

    Требует от разработчика знаний определенной среды программирования

    Работает только с одной платформой

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

    Веб (HTML5)

    Не требует загрузки из магазина мобильных приложений

    Можно легко адаптировать обычный сайт

    Легче найти веб-разработчика нежели разработчика под определенную платформу Простота создания и поддержки

    Требует подключения к интернету

    Не имеет доступа к ПО смартфона

    Не может отправлять push-уведомления

    Должен быть запущен интернет-браузер

    При продаже требуется использование своей платежной системы

    Гибридное

    Функциональность нативного приложения на независимой платформе

    Запускается не из браузера в отличии от веб приложения Возможность независимого обновления

    Распространение через магазины приложений

    Загружается из магазина мобильных приложений (необходимо соответствовать требованиям)

    Разработчик должен быть знаком с разными API

    Как определиться с выбором

    Довольно просто. Если для работы Вашего приложения необходимо использовать мощности устройства, о которых мы писали ранее, или для его работы очень важна скорость обработки информации (игры, социальные сети, геолокационные сервисы, сервисы обмена фотографиями и т.д.), то необходимо делать нативное приложение. Если скорость работы не так важна, то делайте лучше гибридное приложение. А если вам просто важно, чтобы у пользователя была возможность получить от вас необходимую информацию при наличии интернета через мобильный телефон, и его это устраивает, то спокойно делайте веб-приложение!

    Подведем итоги

    В статье мы рассмотрели 3 типа мобильных приложений — нативные, web-приложения и гибридные — и их особенности. И теперь с легкостью можем сделать выбор в пользу того или иного варианта в каждой конкретной ситуации. Помните: от того, какие цели вы планируете достичь, создавая мобильное приложение, зависит, какой функциональностью его следует наделить. И, следовательно, какое приложение будет полезно именно вашему бизнесу в вашей конкретной ситуации.

    Сейчас на рынке — сотни компаний, оказывающих услуги по разработке мобильных приложений. Как разобраться, какая из них наиболее подходит именно для вашего проекта?

    Пройдя по ссылке, вы сможете составлять срезы по географическому размещению компаний-разработчиков, а также по тематикам. Например, выбрав строчку «Игры» в блоке, расположенным справа от рейтинга, вы сможете построить подрейтинг из разработчиков конкретно игровых приложений.

    В данной статье автор достаточно ёмко осветил основные подходы к разработке мобильных приложений с их достоинствами и недостатками. Она будет полезна для изучения будущим заказчикам, чтобы понимать, какой вариант им лучше подойдёт. Автор верно подводит итог фразой, что всё зависит от ваших целей: хотите быстрое функциональное приложение — используйте нативную разработку, хотите просто донести информацию до клиента — лучше остановиться на web-версии, если же необходимо сэкономить — используйте гибридный вариант.

    Однако позволю себе немного дополнить каждый из подходов, остановившись немного поподробнее на деталях.

    Во-первых, не всегда сроки разработки больше, чем при создании html5 или гибридных приложений: всё зависит от его сложности и архитектуры. Если вам требуется сделать какие-то выезжающие меню или интересную анимацию — это нередко проще и быстрее реализовать с помощью нативных компонентов, нежели писать аналогичный функционал с нуля на html5/css/javascript. Конечно, можно попробовать воспользоваться готовыми библиотеками, но это не всегда возможно.

    Во-вторых, оптимизация под различные размеры экранов (смартфоны и планшеты). При использовании нативных компонентов ОС это может быть выполнено в достаточно короткие сроки, и приложение получится интереснее и функциональнее, нежели в случае web-приложений. Примеров подобного рода можно привести достаточно много. Возьмите хотя бы стандартное приложение Gmail под Android и запустите его на смартфоне, а затем на планшете.

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

    Здесь хочется отметить, что веб-приложениями нередко называют и мобильные приложения, которые написаны с помощью html/css/javascript , и устанавливаются на устройство пользователя через официальные магазины (App Store, Google Play и т.д.). Обычно это реализуется следующим образом: вначале весь контент и интерфейс пишутся при помощи веб-технологий. В результате получается определённый набор связанных между собой html-страниц, которые можно перенести без изменений на любую платформу. Затем, в среде разработки (xcode, eclpise и т.д.) создаётся простое приложение, которое архитектурно состоит из одного экрана со встроенным браузером, через который и показываются написанные страницы. Таким образом, получается как бы нативное приложение, распространяемое через маркеты, однако, по сути, написанное при помощи веб-технологий.

    Некоторые разработчики поступают ещё хитрее: чтобы не выпускать обновления, они просто зашивают в браузер ссылку на внешнюю страницу и при запуске приложения показывается оптимизированная версия сайта.

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

    Единожды запустив его, пользователь сразу заметит, что оно ведёт себя, как сайт. Далеко не всем это приходится по душе, что приводит к высокому проценту удалений и отрицательным отзывам, что может плохо сказаться на престиже компании.

    Поэтому с подобными приложениями надо быть очень аккуратными.

    Как верно отметил автор статьи, гибридный вариант является некоторой серединой между нативными и web-решениями. Данный подход позволяет создать часть (а иногда и все) компонентов кроссплатформенными, и при этом получить доступ к различным возможностям устройства, сохранив хорошую скорость работы. Однако здесь всё зависит от того, каким инструментом будут пользоваться разработчики.

    В настоящее время наиболее известными и популярными фреймворками для разработки подобных решений являются PhoneGap и Xamarin.

    Первый из них автор как раз и описала в соответствующем разделе своей статьи. PhoneGap — это html/css/javascript фреймворк, с помощью которого пишется приложение. Доступ к функциям устройства осуществляется посредством использования javascript API фреймворка, а весь контент создаётся на html и css. Приведённые примеры приложений My Heart Camera и TripCase как раз были разработаны при помощи PhoneGap. Основным достоинством данного подхода является полная кроссплатформенность создаваемого кода, поскольку используются всё те же веб-технологии.

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

    Если выбирать между веб-приложением и гибридным решением — лучше остановиться на последнем, поскольку оно позволяет сделать всё то же самое за схожие сроки, только оставляет более широкое пространство для дальнейшего развития.

    Xamarin — это фреймворк, позволяющий создавать приложения при помощи языка C#. Основным его достоинством является то, что всё приложение пишется на одном языке программирования, и позволяет создать ядро системы и ряд компонентов едиными для всех основных платформ: iOS, Android, Windows Phone. Среди кроссплатформенных компонентов можно выделить работу с базой данных, взаимодействие по сети, работа с файловой системой, обработка видеопотока и т.д. Однако интерфейс приложения приходится реализовывать отдельно под каждую из платформ. Данный недостаток легко обернуть себе на пользу, поскольку можно создать интерфейс, отвечающий требованиям и гайдам целевой платформы. Скорость работы подобных приложений очень близка к нативным, и здесь как раз пользователь не сможет определить: нативное оно, или написано с использованием каких-то сторонних решений (в отличие от того же PhoneGap).

    Из недостатков Xamarin можно выделить следующее:

    • время разработки не сильно меньше нативной;
    • не всегда просто удаётся подключить сторонние нативные библиотеки;
    • долгий процесс сборки проектов, что сказывается на общем времени разработки;
    • различные ошибки фреймворка, которые, однако, постепенно исправляются.

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

    В качестве итога хотелось бы сказать, что желание сэкономить и «сделать побыстрее» является естественным и понятным. Имеющийся в настоящее время набор инструментов позволяет удовлетворить его в полной мере, получив приложение, которое решает поставленные перед ним цели. Однако нужно понимать, что вы создаёте приложение не для себя, а для своих клиентов. И основная цель должна заключаться в том, чтобы им пользовались, а не чтобы оно было. Лучше один раз сделать хорошо, чем потом переделывать по 10 раз, пытаясь поднять престиж в глазах клиентов. Получить качественное и удобное мобильное приложение при помощи веб-технологий без использования сторонних фреймворков достаточно непросто. Но даже в этом случае придётся попотеть, чтобы довести приложение до ума (например, если использовать PhoneGap).

    Если вы хотите получить хорошее приложение с расширяемым функционалом — используйте нативный подход, или же фреймворки, аналогичные Xamarin.

    В качестве дополнительного материала, можно также обратить внимание на статью «Мобильный сайт или мобильное приложение для интернет-магазина? С чего начать и что лучше» и комментарии к ней — http://www.cmsmagazine.ru/library/items/moblile/ib_2011-12-19/

    В статье не упомянут такой важный аспект, учитываемый при выборе типа мобильного приложения, как безопасность.

    Если сравнивать нативные приложения и HTML5 по этому критерию, то с большим опережением выигрывают нативные приложения. Большой проблемой и «дырой» в безопасности является возможность посмотреть исходный код HTML5 приложения, то есть странички. Это означает, что можно не только понять как она работает и использовать в своих целях, но и элементарно спамить через формы, если таковые имеются. Опять же никто не отменял уязвимости в адресной строке.

    В нативных приложениях такой проблемы нет. Декомпиляция (получение исходных кодов) это довольно трудоемкий и порой очень длинный процесс, поэтому тут нативные приложения одерживают победу.

    Также хотелось бы упомянуть, что на данный момент HTML5 на мобильных устройствах продвинулся далеко. К примеру, при правильном написании возможна работа HTML5 приложения офлайн (для запуска необходим интернет), и не стоит заявлять так категорично про «не имеет доступа к ПО». Приложения могут получать координаты, данные акселерометра и даже изображение с камеры, что для многих приложений будет вполне достаточно.

    Если оценивать по критерию безопасности гибридные приложения, то они удачно совмещают высокую безопасность и простоту разработки. Но есть небольшой нюанс, который относится и к HTML5-приложениям. При таком многообразии версий браузеров в различных версиях iOS и Android безупречную работу HTML5 и гибридных можно гарантировать не на каждом из устройств, так как некоторые функции могут отсутствовать в ранних версиях браузеров.

    Да, гибридные приложения всё более прочно входят в нашу жизнь. Это факт, от которого сегодня не уйти. Как не уйти разработчикам и от того факта, что заказчики становятся более требовательными. Некоторые же из их запросов и вовсе могут перерасти в откровенные капризы. Самого главного из них зовут «хочу всё и сразу», которого порой не могут обуздать возможности лишь одной мобильной платформы. Именно поэтому вопрос о кроссплатформенности разрабатываемых приложений становится актуальным сегодня как никогда.

    «I\\’m sharing 98% source code between my Android and iOS app.»
    «Я разделяю 98% исходного кода между своим Android- и iOS-приложением»
    Nikolai Sander, основатель EODSof.

    Со своей стороны отмечу, что разработчик в данном вопросе отнюдь не одинок. На данный момент существует достаточно фреймворков, позволяющих заниматься разработкой гибридных приложений: PhoneGap, Titanium, Xamarin и другие. Особенность первых двух заключается в том, что благодаря им мы можем создавать приложения с использованием связки HTML-CSS-JS. Кроме этого, благодаря JavaScript API мы можем получить доступ к «родным» возможностям устройства (акселерометр, геолокация, звук и прочее). Замечу, что вся работа происходит внутри «родного» для устройства WebView-контрола, что в итоге сильно сказывается на производительности и возможностях приложения.
    Чего нельзя сказать про платформу Xamarin. С её помощью можно писать приложения, используя компилируемый высокоуровневый язык C# и платформу .NET(портированную на целевую платформу), а также все сопутствующие ей технологии (LINQ, WCF, SqlClient). Впечатляет и производительность приложения. По словам разработчиков Xamarin, она практически не уступает характеристикам нативных приложений.

    Посудите сами: написание приложений под мобильные платформы в ней сводится к написанию всего лишь двух блоков: 1) платформонезависимого (бизнес-слой, слой данных, слой логики и 2) платформозависимого (Application UI Layout). Причем платформонезависимый блок составляет 90% приложения, который единовременно используется на всех платформах. Остается всего лишь написать Application UI Layout для каждой мобильной платформы. Что же мы получаем на выходе? Сокращение в несколько раз времени, затрачиваемого на разработку кроссплатформенных приложений, а следовательно, и стоимости. Не в этом ли заключается мечта заказчика и разработчика?

    Выбор платформы и технологии для разработки мобильного приложения

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

    Мобильные приложения особенно актуальны для компаний, которые хотят осуществить полноценное покрытие аудитории или решить те или иные узконаправленные задачи. Например, такие как, использование смартфонов для создания отчетов в полях и интеграции этих отчетов с CRM системами.

    Бывает, что сложные сайты компаний с мобильных устройств неудобны в использовании, в этом случае мобильное приложение может выполнить утилитарную функцию — решить проблемы клиента: помочь сделать заказ, оплатить, выполнить операцию по какому-нибудь шаблону или алгоритму.

    При разработке приложений для мобильных устройств особенно актуально стоит вопрос выбора платформы: разработка мобильных приложений iOS или Android. На втором месте — выбор технологии.

    Что поставить на первое месте: iOS или Android?

    На рынке коммерческой разработки мобильных приложений существует негласное правило, в соответствии с которым в первую очередь ведется разработка версии приложения под iOS и только после успешного релиза, разработка мобильных приложений под Android. Этому есть обоснование:

    Аудитория устройств iOS в развитых странах вплотную приблизилась или обогнала аудиторию Android. Статистика StatCounter Global Stats показывает, что в России 25% пользователей предпочитают iOS и 74% Android. Даже в случае, если релиз будет неудачным, риски для репутации компании будут ниже.

    Аудитория iOS это более платежеспособная аудитория. Сами устройства стоят дороже и их обладатели более готовы заплатить за то или иное приложение, нежели пользователи Android, которые, как правило, предпочитают бесплатные продукты.

    iOS отличаются значительно большей стабильностью, т.к. существует всего несколько актуальных версий iOS, под которые имеет смысл вести разработку и несколько размеров экранов. Так, большая часть пользователей iOS имеют последнюю версию операционной системы, в то время как последняя версия Android это преференция только для тех, у кого самые новые устройства. Также под Android существует целый “зоопарк” оболочек и устройств с совершенно непредсказуемыми размерами и разрешениями экрана. Свои оболочки Android разрабатывает практически каждый уважающий себя бренд, например, Samsung, Xiaomi, Huawei, HTC и т.д.

    Таким образом, процесс правки багов и разработки мобильного приложения под iOS значительно более стабилен и понятен.

    Резюмируя вышесказанное, первым этапом мы рекомендуем разработать и запустить мобильное приложение под iPhone и уже только после этого начинать разработку под Android.

    Тем не менее, бывают причины, по которым разработка под Android может стоять и на первом месте:

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

    Если у заказчика есть потребность заказать разработку мобильного приложения в Санкт-Петербурге под конкретные устройства для решения конкретных потребностей своих сотрудников. Например, разработка приложения для составление фотоотчетов по проделанным работам на объекте.

    Выбор технологии: гибрид vs натив

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

    Нативные приложения разрабатываются в нативном окружении под определенную операционную систему. Так, для Android в Android Studio используется язык программирования Kotlin или Java, а для iOS в Xcode используется Swift или ObjectiveC.

    Гибридные приложения — это по сути те же веб-технологии, веб-приложения, но обернутые в оболочку мобильного приложения. Таким образом, для разработки гибридных приложений используются кросс-платформенные фреймворки React Native, Ionic или другие, основанные на HTML5/JavaScript.

    Основной плюс разработки гибридного приложения: оно сразу работает под обеими платформами, да и в целом под любыми другими. Минус — работает с задержкой и определенными ограничениями. А также, как правило, имеет менее user-friendly интерфейс и больше багов.

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

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

    Цукерберг рекомендует:  Wordpress - Проблема с Wordpress (возможно кодировка)
    Понравилась статья? Поделиться с друзьями:
    Все языки программирования для начинающих
    Преимущества Недостатки