PWA против Electron: глубокое погружение
Опубликовано: 2020-05-20Оглавление
Кажется, что в настоящее время в этой области слишком много новых технологий, чтобы мы могли их отслеживать. Совсем недавно мы наблюдаем появление Electron.js, мощной платформы для немалого числа популярных приложений, которые мы используем каждый день, а также Progressive Web App, который должен стать новым способом для веб-сайты для обеспечения первоклассного, привлекательного взаимодействия с клиентами без ущерба для производительности.
Чтобы лучше помочь вам отслеживать все эти новообретенные технологии, сегодня в статье SimiCart мы сравним их — Electron и PWA — наиболее полным образом.
Что такое ПВА?
В наши дни PWA, кажется, на пике популярности, поскольку это технология, поддерживаемая самим Google и привлекшая все внимание крупных парней, таких как Microsoft, с их амбициозным планом наполнить Microsoft Store PWA. Причина, по которой он так популярен, заключается в том, что само PWA — лучшее, что появилось в Интернете за последние годы — его послужной список говорит сам за себя.
Проще говоря, прогрессивные веб-приложения — это веб-сайты, которые выглядят и воспринимаются как приложения. Эта технология представляет собой сочетание лучших функций как веб-приложений, так и нативных приложений, а это означает, что пользователи, использующие PWA, могут воспользоваться всеми функциями, которые ранее были эксклюзивными для нативных приложений, такими как push-уведомления, геолокация и многое другое.

Что такое Электрон?
По сравнению с PWA, Electron во многом похож, поскольку он также использует технологии Интернета, т. е. HTML, CSS, JavaScript, чтобы лучше всего решать кроссплатформенные задачи. Однако, в отличие от PWA, приложения на основе Electron можно превратить в полнофункциональные настольные приложения благодаря использованию собственных API -интерфейсов и механизма рендеринга Chromium . На самом деле, он настолько функционален, что часто неотличим от родных настольных приложений, и вы могли столкнуться с одним из них, не зная, что оно основано на Electron — например, некоторые из ваших основных приложений, вероятно, основаны на Electron, включая Skype, Slack, Discord. и код Visual Studio.

Разве Электрон не звучит лучше?
Ну, если так выразиться… так оно и есть; но нет, тут больше нюансов. Есть причина, по которой мы наблюдаем недавнее замедление числа приложений на основе Electron — это потому, что Electron показывает свой возраст, особенно в настоящее время, когда пользователи теперь более требовательны к многоканальному опыту, который предлагает PWA, чем когда-либо. .
При опросе опытных разработчиков как Electron, так и PWA мы заметили следующие закономерности:
- Доступность . Поскольку приложения на основе Electron представляют собой в значительной степени гибридную версию настольных приложений и вообще не могут быть установлены на мобильных устройствах, PWA имеет преимущество в том, что они доступны практически на любом устройстве с PWA-совместимым браузером.
- Производительность : приложение на основе Electron, если все сделано правильно, должно ощущаться таким же быстрым и легким, как текстовое приложение, но это не лучшая производительность, которую вы можете получить. Одним из известных преимуществ PWA является то, что вы можете добиться более высокой производительности (по сравнению с Electron) при первой загрузке и почти мгновенного времени загрузки при последующих загрузках, поскольку все кэшируется на лету, а большая часть накладных расходов JavaScript вместо этого может быть перенесена на сервисные работники, которые являются неотъемлемой частью PWA.
- Обновление : как мы все знаем, обновление (и развертывание в целом) является серьезной проблемой для нативных приложений любого типа, и Electron не является исключением. Этого можно избежать, выбрав подход PWA, при котором весь процесс обновления может происходить на стороне сервера, что избавляет ваших клиентов от процесса установки обновлений.
- Размер : Electron хоть и весит меньше, чем обычное настольное приложение, но все же значительно тяжелее, чем PWA. Трудно найти приложение Electron, которое весит менее 50 МБ, в то время как большинство PWA весит менее одного мегабайта.
- Безопасность : PWA просто лучше, когда дело доходит до безопасности, поскольку он полностью полагается на безопасные соединения (HTTPS), поддерживаемые на стороне браузера, в то время как Electron, будучи веб-приложением, заключенным в собственный контейнер приложений, должен делать все вручную сам по себе.
Почему PWA становится все более популярным
Вот правда, Электрон — устаревшая технология. Несмотря на то, что в настоящее время он используется большим количеством настольных приложений, многие из них уже планируют преобразовать свои существующие настольные приложения на основе Electron в PWA. Да, вы можете преобразовать приложение на основе Electron в PWA, хотя это не будет таким гладким процессом по сравнению с процессом преобразования из PWA в Electron, но это возможно.

Электрон без всех его недостатков
Можно сказать, что прогрессивные веб-приложения являются лучшей, потенциально более развивающейся технологией, поскольку они решают фундаментальные проблемы Electron — совместимость и простоту распространения — при этом оставаясь функциональными и привлекательными для пользователей. Это связано с тем, что браузеры сегодня становятся собственной универсальной ОС со всеми возможностями, которые вы могли бы пожелать, и, как побочный эффект этого, технологии, которые полагаются и работают в Интернете, такие как PWA, со временем становятся только лучше. .
Узнать больше: Настольное PWA — будущее доставки ПО PWA для Magento 2
Многоканальный
Когда дело доходит до многоканального взаимодействия, PWA превосходит все, что только можно себе представить, поскольку оно специально создано для гибкого взаимодействия с несколькими устройствами. В зависимости от типа бизнеса, PWA может быть подходящим для компаний, которые хотят, чтобы взаимодействие с пользователем было одинаковым на всех устройствах, в то время как с Electron JS вам придется разрабатывать разные кодовые базы для разных платформ, что увеличивает стоимость разработки.
Когда выбрать Электрон
Несмотря на свои преимущества, PWA не может быть всеобъемлющим решением для всех бизнес-моделей, и именно здесь Electron находит свою нишу. Приложения, основанные на Electron, обычно не сталкиваются с обычными ограничениями браузера и могут свободно разрабатываться на основе функций Node.js, с помощью которых Electron может иметь доступ ко всем собственным API-интерфейсам операционной системы. Это означает, что приложения на основе Electron все время работают в пользовательском режиме, эффективно обеспечивая безопасную и стабильную рабочую среду для пользователя.
Как правило, в сообществе Electron никогда не бывает хорошей идеей использовать Electron для того, что может быть просто веб-сайтом . Поэтому, если вы считаете, что ваше приложение относится к меньшинству случаев, когда вам нужна дополнительная свобода и функциональность нативных приложений, выбирайте Electron; но в любом другом случае PWA более чем достаточно.
Перенос слов
Интернет с его технологиями быстро наверстывает упущенное, и в сочетании с движением крупных брендов, продвигающим внедрение PWA вперед, вас не должно удивлять, что в будущем вы увидите больше PWA. Однако это не означает, что Electron находится на смертном одре, поскольку технология все еще вполне функциональна и, как ожидается, будет существовать еще довольно долго; но если вы один из тех, кто выбирает между ними, PWA — это несложный выбор, поскольку технология все еще относительно свежа, и ожидается, что в ближайшем будущем ее поддержка резко возрастет.
Читать далее:
PWA против Flutter: подробное сравнение
Все, что вам нужно знать о прогрессивных веб-приложениях
Прогрессивные веб-приложения: 12 примеров от реальных брендов для вашего вдохновения
Magento PWA Studio: подробное сравнение с Vue Storefront
