В этом эссе представлен обзор аргументов, представленных в различных статьях, для принятия решения о том, какую платформу выбрать при разработке проектов для мобильных устройств.
В конце предпринята попытка создать схематический окончательный алгоритм выбора платформы.
Определения
Существует два направления технической реализации проектов для мобильных устройств: мобильный веб-сайт и мобильное приложение.Мобильным веб-сайтом будет считаться специализированный сайт, адаптированный для просмотра и функционирования на мобильном устройстве.
Сайт может включать интерактивные компоненты, использующие JavaScript, HTML5 и новые API-интерфейсы браузера.
В этом случае такая реализация называется веб-приложением.
Далее, во избежание путаницы, мы будем называть веб-сайтом любую опцию, работающую внутри браузера мобильного устройства.
Мобильное приложение – это специально разработанное приложение для конкретной мобильной платформы (iOS, Android, Windows Phone).
Обычно приложение разрабатывается на языке высокого уровня и компилируется в собственный код ОС для достижения максимальной производительности.
Есть третий вариант – мобильное приложение, включающее в себя браузерную составляющую.
При этом часть мобильного приложения чаще всего используется для навигации и интеграции с ОС, а веб-компонент — для отображения контента.
Обычные пользователи часто не могут отличить эту опцию от родного мобильного приложения.
Аргументы
Интерфейс
Одним из первых аргументов, которые приводят сторонники приложения, является то, что интерфейс наиболее близок к ОС и знаком пользователям.Действительно, мобильное приложение наиболее тесно интегрировано с платформой и позволяет реализовать привычный адаптивный интерфейс.
С другой стороны, веб-сайт с хорошим форматированием и использованием JavaScript может обеспечить вполне понятный метод взаимодействия.
На данный момент обзор веб-сайта существенно уступает обзору приложения, но возможности мобильных устройств продолжают расти, а сами браузеры существенно меняются в лучшую сторону.
Кроме того, разные версии мобильных операционных систем могут диктовать свои стандарты, которых необходимо придерживаться.
Однако некоторые нововведения могут быть не совсем понятны рядовым пользователям.
Показательно в данном случае то, что наиболее активными пользователями (теми, кто ставит оценки и комментирует в магазинах приложений) являются «фанаты» последних новинок мобильной ОС.
На это стоит обратить внимание при продвижении проекта — их можно использовать как союзников, которые помогут распространить информацию.
Производительность
Веб-сайт, особенно интерактивный, значительно уступает приложению по производительности.Браузеры на мобильных устройствах пока не могут порадовать высокой производительностью, кроме того, веб-разработчики используют не самые оптимизированные версии библиотек (плохая реализация этих библиотек никак не влияет на «большие» браузеры, так что там с этим можно мириться) ).
Однако приложение не всегда может порадовать хорошей производительностью — излишняя анимация и сложный интерфейс существенно снижают «отклик».
Кроме того, для сложной графики и анимации приходится использовать языки нижнего уровня, разрабатывать или приобретать отдельные специализированные библиотеки.
Интеграция платформы
В этой области приложения намного опережают веб-сайты.В приложении значительно больше возможностей доступа к устройству.
Однако выше уже упоминался третий вариант, когда браузерный компонент встроен в приложение, и в этом случае такая разница нивелируется.
Кроме того, постоянно повышается уровень предоставления доступа к возможностям устройства из браузера посредством расширяющегося набора API.
доступность Интернета
Веб-сайт запускается из браузера, поэтому требует постоянного подключения к сети.Это не имеет значения, если проект реализуется исключительно как онлайн-проект. Однако даже в этом случае из-за особенностей мобильного доступа в Интернет переход между частями приложения (навигация) связан с неприятными для пользователя задержками.
Возможно, использование API для хранения локальных данных решит эту проблему, но пока примеров такого использования не найдено.
Мобильные приложения могут работать без подключения, кэшируя и обновляя данные по мере необходимости при подключении.
Но все же в подавляющем большинстве бизнес-решений приложение также нуждается в подключении.
Фрагментация
Для реализации проекта на всех или некоторых конкретных платформах необходимо разработать приложение для каждой платформы отдельно, каждая со своей средой и языком разработки, а также своими стандартами интерфейса.В случае с мобильным сайтом одна версия должна охватывать потребности всех платформ.
Вот как это выглядит в теории.
Но на практике оказывается, что браузеры на разных платформах работают по-разному.
Приходится поддерживать либо несколько версий одного сайта, либо подстраивать выводимый контент в коде под текущий запрос.
Значительные различия в размерах экранов также влияют на макет сайта.
Ресурсы
Есть такой аргумент, как наличие специалистов.Считается, что специалиста по разработке мобильных приложений очень сложно найти и он требует очень высоких гонораров.
Также мы учитываем, что для каждой платформы, скорее всего, потребуется отдельный разработчик.
Хотя веб-разработчиков много и их услуги стоят относительно дешевле.
Видимо все зависит от конкретной ситуации и конкретного места.
Если у вас есть веб-разработчик, то выгоднее всего будет разработать веб-сайт; если есть мобильные разработчики, то разработка приложения может оказаться не слишком дорогой.
Но опять же зависит от проекта - если требуется серверная часть (а она, скорее всего, потребуется), то опять же понадобится веб-разработчик, хотя, возможно, не такой высокой квалификации и трудоемкость его части будет значительно ниже.
Публикация
Приложения некоторых платформ «привязаны» к конкретному магазину (AppStore, Windows Store).Даже если такой жесткой привязки нет, пользователи все равно привыкли находить приложения в магазинах (Google Play).
Такие магазины накладывают существенные ограничения на функции приложений (в первую очередь в сфере платных услуг), а также на одобрение каждой новой версии уходит значительное время.
Со своей стороны, сайт доступен сразу, вам достаточно открыть браузер и ввести адрес (хотя если присмотреться, то это может быть довольно трудоемким действием).
Новая версия сайта доступна сразу в момент публикации.
Возможность оказания платных услуг ничем не ограничена.
Опять же аргументация очень своеобразная - с одной стороны есть ограничения и медленная публикация в магазине, с другой - в магазине уже есть огромное количество пользователей и готовые системы предоставления платных услуг.
Тогда как пользователей необходимо привести на сайт и оплата через сайт на мобильном устройстве остается очень трудоемкой процедурой.
HTML5
Аббревиатура HTML5 в последнее время привлекает много внимания.Эта концепция существенно отличается, если посмотреть на нее с маркетинговой или технической точки зрения.
Технологически HTML5 представляет собой дальнейшее развитие языка разметки HTML. Однако был сделан значительный шаг в сторону большей структуризации презентации, а не формата отображения.
В язык добавлены отличные мультимедийные возможности для воспроизведения аудио и видео.
Добавлена возможность работы с графикой.
Язык форматирования CSS был значительно расширен.
В язык JavaScript было добавлено несколько API для работы с графикой, локальными данными и мультимедийным контентом.
Сам язык был значительно переработан для повышения производительности.
Стандарт HTML5 все еще находится в стадии разработки и продолжает обновляться.
С маркетинговой точки зрения HTML5 — гораздо более широкое понятие.
Это также означает множество дополнительных API, в той или иной степени поддерживаемых различными браузерами, и множество интересных расширений CSS (в первую очередь в области интерактивного отображения).
В основе концепции — высокая интерактивность сайта, что позволяет пользователям принимать его за нативные приложения.
С точки зрения мобильной разработки нет смысла существенно разделять обычный сайт и сайт, использующий HTML5. Фактически, интерактивность в той или иной степени, реализованная с помощью JavaScript и новых API, становится стандартом для любого веб-сайта.
Нецелесообразно разделять разработчиков веб-сайтов и разработчиков HTML5 — веб-разработчик должен свободно владеть технологиями HTML5 и использовать их, если проект удобно реализовать с использованием новейших разработок.
выводы
Как оказывается, ни один из приведенных выше аргументов не склоняет чашу весов в ту или иную сторону.Каждый аргумент имеет как преимущества, так и недостатки обоих решений.
Третий, комбинированный вариант также может решить часть проблем, но в то же время порождает новые.
Поэтому в каждом конкретном случае решение необходимо принимать исходя из сложившейся ситуации.
С точки зрения экономии ресурсов веб-разработка кажется наиболее предпочтительным вариантом.
Главное — не увязнуть в тонкостях реализации, и предоставить пользователям максимально полезные функции.
Помните, что главное — контент, а «красоты» (анимация, графика) отходят на второй план.
Если вы планируете управлять проектом онлайн в качестве основного варианта взаимодействия с пользователем, вам непременно нужно начать с веб-сайта, который сможет охватить не только мобильных клиентов, но и пользователей настольных компьютеров.
В случае успеха вы сможете в дальнейшем внедрять отдельные мобильные приложения на выбранных платформах.
Для большинства бизнес-приложений этот вариант наиболее подходит. Если проект предполагает больше офлайн-работы и ориентирован на мобильных пользователей, то стоит отдать предпочтение приложениям.
Однако, как упоминалось выше, вам все равно может понадобиться веб-разработчик.
Для реализации игр и других приложений, требующих высокой производительности интерфейса, вероятно, более дальновидно реализовать их через приложения.
Существуют кроссплатформенные библиотеки для разработки игр, которые позволяют реализовывать нативные приложения для разных платформ с использованием одного и того же кода (или с минимальными изменениями).
Теги: #мобильный веб #разработка мобильных приложений #мобильное приложение #разработка iOS #разработка мобильных приложений #разработка Android
-
Мейо-Смит, Ричмонд
19 Oct, 24 -
Анонс Конференции Jpoint 2015 Java
19 Oct, 24 -
Сянци: Китайская Игра Типа Шахмат.
19 Oct, 24