Прогрессивное веб-приложение (PWA) против расширения Electron против браузера - PullRequest
0 голосов
/ 05 июня 2018

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

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

Поскольку я хотел получить доступ к API-интерфейсам, доступным только для веб-расширений, я немного читал в сети MDNдокументы о них, и это заставило меня задуматься и запутаться в различиях между PWA и расширением браузера, которое использует страницы расширения для запуска своих собственных страниц / программ, в отличие от изменения способа просмотра и использования других веб-страниц вбраузер и так далее?

Если кто-то хочет, чтобы его приложение работало в автономном режиме и велось как настольное приложение, то в чем недостаток, если сделать его расширением для браузера?Я обнаружил больше информации о PWA, чем о расширениях браузера, создавая впечатление, что расширение не должно использоваться таким образом.

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

Я новичок в stackoverflow и заметил, что вопросы иногда закрываются, потому что онирассматриваются как спорные или ищущие мнения, а не факты.Итак, чтобы быть более конкретным, не могли бы вы помочь мне понять плюсы и минусы каждого и / или моменты решения, которые следует учитывать при выборе подхода?Спасибо.

Ответ на Ответ / Комментарии

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

Этот вопрос также не имеет ничего общего с особенностями моего приложения.Он уже может существовать как PWA.Вопрос в том, может ли приложение уже существовать в качестве PWA, что было бы «плохо» в отношении того, чтобы сделать его расширением для браузера, или причин, по которым это не нужно делать.Доступ к большему количеству API, чем доступно для PWA, и их установка в браузере, делающем его «домашним», по-видимому, делают расширение, из-за отсутствия лучшего термина, лучшей средой, чем среда PWA.

Описание в веб-документах MDN о том, что такое расширение для браузера, включает в себя отдельные игры, но, кажется, поощряет игры, которые интегрированы в опыт просмотра - какими бы они ни были.Я не создаю игру, но хотел знать, что не так с расширением, которое является автономным инструментом.

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

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

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

1 Ответ

0 голосов
/ 05 июня 2018

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

PWA - Приложения PWA заменят приложения Chrome.PWA может быть установлен на рабочий стол во всех основных настольных ОС и мобильных ОС.Он может работать в автономном режиме.То, что он может сделать с точки зрения аппаратного доступа, зависит от версии браузера пользователя. То же самое можно проверить здесь .Все ограничения веб-приложения сохранятся.

Электрон - Это веб-приложение, обернутое с собственным слоем (вроде!).Это также может работать в автономном режиме. На самом деле, вначале он отключен, так как все компоненты HTML / CSS / JS подключены в Electron, он также может получать доступ к API и делать все, что PWA может делать функционально.Electron будет отличаться от PWA в основном с точки зрения того, как его сборка, распределение и развертывание.Редактор Atom, редактор Visual Code, Slack - некоторые из известных инструментов, построенных с использованием HTML / CSS / JS и упакованных с использованием Electron.

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

Вы должны быть более точными в том, что вы пытаетесь достичь / сделать в своем приложении.Все, что вы упомянули, - это «инструмент, в котором пользователь может создавать модули, которые он может позже запустить».Это не дает никакого понимания вообще.

...