Рубріки: Новости

Разработчики PWA расслабились: Google отложил смену правил установки веб-приложений

Богдан Мирченко

Месяц назад пользователь medium.com Кевин Бэйсит предположил, что 52% всех Progressive Web Apps (PWA) перестанут работать с выходом Chrome 93 и Edge 93. Его утверждения были основаны на появлении в манифесте консоли и приложения сообщения от разработчиков браузеров о смене критериев установки PWA. Несколько дней назад в Google решили приостановить свои планы и отложили их на неопределенный срок. 

В исходной статье Кевин Бэйсит писал о том, что Google хотел изменить правила установки PWA, потому что многие разработчики используют прием, позволяющий приложениям не работать в действительности офлайн. 

self.addEventListener('fetch', function (event) {
  //DO NOTHING BECAUSE YOLO 🐵
});

Разработчик считает, что некоторые приложения бесполезны в автономном режиме и в качестве примера привел автономный вариант приложения LinkedIn. При этом он не понимает, почему Google не считает страницу с динозавром приемлемым резервным вариантов для автономного использования. 

Почему Google передумал?

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

  • Ресурсы необходимо кэшировать, когда они извлекаются с сервера первый раз, чтобы к ним можно было получить доступ позже, когда нет сети;
  • Для полноценной работы в автономном режиме необходимо заранее кэшировать много ресурсов;
  • При управлении предварительно кэшированными ресурсами есть вероятность забыть добавить новый ресурс в список ресурсов для  кэширования, что может нарушить работу в автономном режиме. Механизма, который уведомит об этом, не существует;
  • Обработчик событий выборки сервис-воркера fetch не лишен ошибок, особенно когда речь идет о выборке и кэшировании ресурсов, поступающих из других доменов. Проблемой также может стать работа CORS;
  • Когда пользователь переходит в автономный режим, ему нужно показать последнюю версию кэшированных данных. При демонстрации устаревших данных, нужно уведомить пользователя об этом.

Если все сделано правильно, приложение может загружаться практически мгновенно, уверяет Кевин Бэйсит. Это может сэкономить массу средств на облачные платформы, уменьшив количество запросов, идущих от сервера, и сделать часть приложения полезным в автономном режиме. Но в запланированном обновлении Chrome был призыв к созданию «идеальной реализации кэширования», что Кевин Бэйсит считает нереальным, учитывая хрупкость и сложность процесса.

Останні статті

Что такое прокси-сервер: пояснение простыми словами, зачем нужны прокси

Прокси (proxy), или прокси-сервер — это программа-посредник, которая обеспечивает соединение между пользователем и интернет-ресурсом. Принцип…

21.11.2024

Что такое PWA приложение? Зачем необходимо прогрессивное веб-приложение

Согласитесь, было бы неплохо соединить в одно сайт и приложение для смартфона. Если вы еще…

19.11.2024

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

Повсеместное распространение смартфонов привело к огромному спросу на мобильные игры и приложения. Миллиарды пользователей гаджетов…

17.11.2024

Google Bard: эффективный аналог ChatGPT

В перечне популярных чат-ботов с искусственным интеллектом Google Bard (Gemini) еще не пользуется такой популярностью…

14.11.2024

Скрипт и программирование: что это такое простыми словами

Скрипт (англ. — сценарий), — это небольшая программа, как правило, для веб-интерфейса, выполняющая определенную задачу.…

12.11.2024

Дедлайн в разработке: что это такое простыми словами

Дедлайн (от англ. deadline — «крайний срок») — это конечная дата стачи проекта или задачи…

11.11.2024