Почему PWA могут быть надежнее нативных приложений - Илья Задябин
20.03.24, Ср, 18:42, Мск,
Илья Задябин — эксперт в сфере мобильной разработки, с опытом работы в образовании, онлайн-банкинге, финансовых услугах и электронной коммерции.
Илья был одним из создателей приложения AI Language Tutor Slai и работал в таких компаниях? как Secreate.io, Slai.tech, Сбер, Eleven Systems. Сейчас Илья Senior Flutter Developer в Taxdome. Компания создает решения для бухгалтерских фирм и их клиентов. Основные продукты — веб-платформа и два приложения, где клиентам доступны расширенные возможности управления документами и счетами, CRM и автоматизация процессов.
Илья рассказал о преимуществах и особенностях Progressive Web Applications (PWA) и сравнил их работу с нативными приложениями.
Илья, расскажи, что такое PWA и в чем их отличие от нативных приложений?
Илья: Если говорить просто, это такая усовершенствованная версия сайта, которая автоматически адаптируется под разные устройства пользователей и не требует создания отдельных версий для Android или iPhone. По сути, при помощи современного браузера сайт может мимикрировать под приложение. Обычно PWA устанавливаются при помощи всплывающих уведомлений на сайте.
Важно отметить, что PWA автоматически адаптируются к любому размеру экрана — от смартфонов до компьютеров. Они могут работать офлайн или при нестабильном соединении, кэшируя важные ресурсы при первом посещении. Интерфейс PWA максимально приближен к нативным приложениям. Также PWA синхронизирует в фоне данные, поэтому пользователь всегда видит актуальную информацию.
Такие приложения могут обращаться к устройству: отправлять push-уведомлений, иметь доступ к камере и геолокации. А пользователи могут добавлять PWA на главный экран мобильного без посещения магазина приложений.
Когда появилась эта технология?
Илья: Сама технология была представлена Microsoft еще в 2000 году, и лишь в 2015 Google начал ее активное развитие. Но на тот момент она не привлекла должного внимания со стороны разработчиков. И вот в последние годы она уже становится полноценной альтернативой традиционным приложениям.
Можешь привести примеры компаний, которые используют PWA, и рассказать, к каким результатам это их привело?
Илья: Конечно, PWA очень активно сейчас используется. Twitter Lite, например, увеличил количество страниц за сессию на 65%, а количество твитов на 75%. Они смогли снизить bounce rate на 20%. И наверное, самое впечатляющее, загрузка Twitter Lite занимает менее 3 секунд даже при медленном интернете.
Alibaba также сообщили об увеличении конверсии на 76%, у них стало на 14% больше пользователей на iOS и на 30% на Android ежемесячно, а взаимодействие с приложением увеличилось в 4 раза.
Pinterest, превратив свой мобильный сайт в PWA, отмечают прирост вовлеченности на 60%, а рекламные доходы и время на сайте выросли на 44% и 40% соответственно.
Эту статистику можно посмотреть на PWA Stats.
А российские компании используют PWA?
Илья: В России тоже много сервисов и компаний, которые удачно используют PWA, например, Яндекс.Погода, Авито, Тинькофф Банк, КиноПоиск, стриминговый сервис Иви.
Давай поподробнее поговорим про преимущества PWA по сравнению с традиционными приложениями.
Илья: Преимуществ у PWA много, во-первых, это экономия. Разработка и поддержка одного PWA обходится значительно дешевле, чем создание отдельных нативных приложений для различных платформ. Это делает PWA идеальным решением для стартапов и малого бизнеса, а также для крупных компаний, стремящихся оптимизировать расходы.
Во-вторых, PWA обновляются автоматически в реальном времени. Это происходит при каждом посещении или в фоновом режиме, поэтому пользователи всегда видят последнюю, наиболее безопасную и стабильную версию приложения.
Еще важно, что PWA абсолютно не зависят от магазинов приложений. Таким образом, разработчики могут быстро реагировать на обнаруженные уязвимости, обновляя свои приложения напрямую без задержек, связанных с процессом проверки в магазинах приложений App Store и Google Play. Также через PWA можно реализовать приложения, которые в принципе запрещены в магазинах, и вдобавок избавиться от гигантской комиссии.
Ну и, наконец, еще одно преимущество — это универсальность. PWA могут работать на любом устройстве с современным веб-браузером, обеспечивая одинаковое поведение для всех пользователей без необходимости разработки отдельных версий для разных платформ и операционных систем. Это уменьшает вероятность появления ошибок, связанных с поддержкой нескольких кодовых баз.
Могут ли при этом PWA обеспечить необходимый уровень безопасности?
Илья: Да, безусловно. Браузеры, в которых запускаются PWA, за счет обязательного использования HTTPS, обеспечивают повышенный уровень безопасности передачи данных.
Звучит, как что-то идеальное. А есть какие-то ограничения, недостатки?
Илья: Да, несмотря на многочисленные преимущества, PWA имеют свои ограничения. Одна из главных проблем — ограниченный доступ к API устройства. Несмотря на постоянное развитие браузеров и расширение доступа к новым API, PWA всё ещё не могут использовать некоторые функции, такие как Bluetooth, расширенные возможности камеры, жесты, спиcок контактов, touch id.
Другая проблема связана с различиями в поддержке браузерами. Большинство современных браузеров поддерживают основные компоненты PWA, но существуют различия в реализации и поддержке некоторых функций. Это может привести к несоответствию в работе PWA на разных платформах, что требует от разработчиков дополнительных усилий для обеспечения кросс-браузерной совместимости.
Есть ограничения, связанные с установкой PWA. Дело в том, что достаточно простой процесс добавления приложения на главный экран устройства может быть неочевиден для некоторых пользователей, привыкших к традиционному способу установки приложений через магазины.
К тому же отсутствие PWA в магазинах может снизить их видимость для потенциальной аудитории. Продвижение и оптимизация PWA требуют отдельного подхода по сравнению с нативными приложениями или традиционными веб-сайтами.
Еще одно ограничение заключается в том, что производительность и возможности PWA напрямую зависят от браузера и его возможностей, что может ограничивать функциональность приложения на устаревших устройствах или в браузерах с неполной поддержкой стандартов.
А как PWA взаимодействуют с другими приложениями?
Илья: Тут тоже есть нюансы. PWA ограничены в возможностях интеграции и взаимодействия с другими приложениями на устройстве пользователя, например, когда мы можем отправить документ из одного приложения в другое.
Как ты думаешь, какие перспективы у PWA в мобильной разработке?
Илья: С улучшением поддержки API и браузеров, доля PWA в мобильной разработке будет расти. Это позволит им стать более интегрированными с операционными системами и уменьшит разрыв между PWA и нативными приложениями. Думаю, что в будущем они станут ключевым решением для компаний с ограниченными бюджетами.