Алекс Смит: Тестирование ПО с Нуля до Специалиста
February 17

11.1 Виды мобильных приложений

Критерии выбора при разработке мобильного приложения:

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

- выбор ОС/платформы и версии

- выбор устройств, популярных производителей и моделей

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

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

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

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

Типы мобильных приложений:

Нативные

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

Эти приложения называют нативными оттого, что они написаны на родном (с англ. native – родной) для определённой платформы языке программирования. Для Android этим языком является Java или же Kotlin. Кстати, Kotlin был придуман российским разработчиком из компании JetBrains и назван в честь острова Котлин, который находится в Финском заливе и на котором находится Кронштадт, который так знаком всем жителям Санкт-Петербурга, тогда как для iOS – Swift.

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

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

Способны обходиться без подключения интернета или частично использовать его.

Давайте рассмотрим плюсы нативных приложений

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

Минусы:

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

пример – приложение Shazam, которое осуществляет определение и поиск информации об играющей на другом устройстве песне:

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

Web

Web – веб-сайт, адаптированный для нашего мобильного приложения:

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

Как понять что мы используем мобильное веб-приложение? Например, когда мы заходим в браузер и хотим открыть к примеру YouTube или ВКонтакте и вбиваем его в строку браузер, то нам появляется версия данного сайта, но в поле url будет стоять m.youtub или m.vkontakte. Что указывает что это мобильная версия данного приложения.

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

Веб-приложения отличаются кроссплатформенностью, то есть способность работать, функционировать на любой ОС. Так же, веб-приложение не занимает памяти устройства, так как оно не требует его установки

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

Плюсы мобильных веб-приложений:

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

Минусы мобильных веб-приложений:

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

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

Гибридные приложения представляют собой сочетание веб и нативных приложений. Они могут быть загружены из маркетов вроде Google Play и App Store. Для их работы необходимо интернет-подключение. Без наличия последнего веб-функции попросту не работают.

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

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

Итак, стоит разрабатывать его, если:

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

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

  • стоимость и скорость разработки;
  • количество разработчиков;
  • кроссплатформенность;
  • опция автономного обновления.

Минусы гибридных приложений:

  • некорректная работа при отсутствии интернет-соединения;
  • средняя скорость работы на фоне нативных;
  • минимализм в отношении визуальных элементов.

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

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