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

Мобильная верстка и нативные приложения: в чем разница

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

Пример адаптивной и неадаптивной верстки

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

Когда разумнее использовать мобильную верстку

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

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

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

Когда лучше сделать мобильное приложение

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

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

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

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

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

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

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

В первом случае используются готовые среды разработки, которые обеспечивают совместимость приложения с основными операционными системами – iOS и Android. От разработчика редко требуется знать какой-то специализированный язык программирования – часто хватает JavaScript или Python. Кроссплатформенные приложения легче разрабатывать, у них отличная совместимость с разными операционными системами. Однако минусы тоже существенные – зависимости от стороннего фреймворка, сложность с реализацией некоторого функционала, возможные проблемы с производительностью.

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

Альтернативой является разработка нативных приложений, то есть направленных на работу с какой-то определенной операционной системой – Android или iOS. Здесь уже будут свои особенности в зависимости от выбранной ОС, например, в обоих случаях нужно использовать разные языки программирования: Kotlin или Java для Android, Swift или Objective-C для iOS. Также такое приложение требует больше времени на разработку. Однако его легче сделать производительным, добавить в него дополнительные функции. Плюс, вы не зависите от стороннего фреймворка и его разработчиков.

Пример кода на Swift – языке программировании для разработки нативных приложений под iOS и macOS

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

Особенности нативных приложений

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

Высокая производительность

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

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

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

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

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

Есть возможность работы в оффлайн

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

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

Легче сделать удобный пользовательский интерфейс

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

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

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

Можно добавить много интересных фишек

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

Есть возможность использовать возможности смартфона

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

В мобильном приложении Aliexpress есть поиск по фото

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

Необходимость разработки нескольких версий

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

Техническая сложность разработки

Для нативной разработки требуется больше опыта разработки, а также умение работать с языками программирования Java, Objective-C, Kotlin, Swift. Специалистов по ним значительно меньше, чем по JavaScript, а также верстке. Плюс, изучение этих языков требует больше времени. Если нужно охватить максимум аудитории, то придется разрабатывать приложение и для iOS, и для Andoid, что значит:

  • нужно найти человека, владеющего на высоком уровне парой Kotlin-Swift или Java-Objective-C. При этом у него еще должно быть по устройству с Android и iOS(macOS) для проверки работоспособности;
  • найти двух отдельных разработчиков под iOS и Android.

Заключение

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