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

По данным statista.com за 2015 год мобильный интернет прибавил в пользователях до 52,7 процентов, при этом ожидаемая цифра к 2017 году составляет 63,4 %. Только лесные отшельники не видят ажиотаж вокруг «карманного» интернета, а тем временем спрос на дескпот уходит в небытие. Агрессивный рост популярности гаджетов порождает перед нами ряд новых вопросов. Главный из них «Какую платформу использовать для разработки приложений мобильных устройств?»

Что мы имеем на сегодняшний день?

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

  • Нативные - «родные» мобильные приложения, интегрируемые с аппаратной частью устройства и которые не имеют зависимости от браузера, работа которых может осуществляться автономно без подключения к интернету;
  • Веб-приложения - не что иное, как мобильная версия сайта. Такая программа привязана к браузеру, хотя иногда сервис позволяет их скачать, но для среднестатистического пользователя будет очевидным «браузероподобие» такого приложения. Качество и возможности минимальны, а управление аппаратной частью фактически отсутствует;
  • Гибриды - не скажу, что золотая, но середина между нативными приложениями и мобильными веб-сайтами, на которой остановимся подробнее, в связи с её кроссплатформенностью, универсализирующей наше приложение.

Кроссплатфомернность

Чтобы понять «откуда ноги» растут у этого термина, окунемся в 90-е. Только не во время рэкета, тотальной приватизации и распада Советского Союза, а, непосредственно, в силиконовую долину, где было известно и широко использовались три операционные системы: Mac Os, Windows 95 и Linux. Разумеется, что разработка программ для каждой велась на собственном языке. Тогда и пришла на помощь компания SunMicrosystems, давшая миру тот самый JavaScript, имеющий одинаковый для всех user interface, что придало языку «интернациональный» характер. Как мы знаем, прогресс не оставался на месте и с ростом поглощаемого траффика, значительно выросли и возможности глобальной сети. Благодаря Flash и Silverlight, клиенты обрели фантастический характер, но и получили «в плечи» ряд новых проблем, такие как, например, плохая совместимость с Linux. Тут и выходит на пьедестал html5.

Разработка мобильных сайтов в html5

Для невооруженного глаза, сочетания этих букв и цифры, может показаться очередной версией верстки, но это далеко не так. Html5- полноценная платформа, обеспечивающая полный комплект сервиса, в основе которой лежит javascript, несмотря на его отрицательные стороны, которые мы рассмотрим далее. Своей популярностью, у веб- разработчиков, html5 может быть благодарна отказу от flash и Silverlight гигантами мобильного интернета – IOS и Android.

Что-то не так

Вроде бы всё просто и легко. Узость использования нативных и веб приложений очевидна. Хватайся за яву и вперед писать адаптивные сайты, но нет! Следует помнить следующее: -Javascript- однопоточная среда, т.е. выполнение нескольких скриптов одновременно- невозможно; -Для работы html5 понадобится запуск WebView, а это дополнительное потребление памяти; -Ставшее классическим, потребление дополнительных ресурсов, при работе с DOM; -Различные системы имеют индивидуальные требования к User Interface; -Спектр плагинов PhoneGAP не впечатляет, соответственно ограничивается доступ в аппаратным возможностям.

Резюмируем

Разработка кроссплатформенных мобильных приложений в html5 подойдет не всем. Но самое место для этой платформы, если:

  • Необходим единый код;
  • Вы желаете, чтоб ваше приложение поддерживало все платформы;
  • Вам не нужен сложный user interface.
Разумеется, что все растет и развивается, на помощь приходят такие инструменты, как WebWorkers и многие баги остаются в прошлом. На данный момент наибольшая популярность за приложениями, разработанными в native SDK, дающей ряд гибридных функций, но будущее не за горами. Поэтому нам остается следить за тенденциями и развитием, а шагать по пути меньшего сопротивления.