Вопрос:
С точки зрения пользователя расширение похоже на то, что вы переходите в Интернет-магазин Chrome, чтобы расширить возможности браузера, тогда как плагин – это то, что вам нужно сделать на внешний сторонний веб-сайт, чтобы расширить возможности браузера,
С технической точки зрения или с точки зрения реализации, в чем разница между этими двумя? Я видел аналогичный вопрос здесь (Является ли phplivex расширением или плагином?), Но не получил ответ, который я искал.
Я после разницы в том, как расширение или плагин разрабатывается и развертывается (если есть), и если есть какое-либо совпадение между ними.
Ответ №1
Слова “расширение” и “плагин” имеют множество разных (но связанных) значений по сравнению с программными продуктами. Эти слова используются взаимозаменяемо многими пользователями (и разработчиками). В расширениях браузера они имеют точный смысл, который также отображается через пользовательский интерфейс. Например, расширения (и приложения) можно управлять с помощью chrome://extensions/, в то время как плагины могут управляться в chrome://plugins/ в Google Chrome.
В Chrome, Firefox, Opera и Safari расширения браузера относятся к части программного обеспечения, которые дополняют браузер с помощью API расширений браузера (см. Документацию по расширению для Chrome, Firefox, Opera, Safari). Большинство современных браузеров требуют, чтобы расширения были написаны с использованием JavaScript. Расширения обычно не зависят от платформы и работают в ограниченной среде (Firefox является заметным исключением для последнего). Расширения обычно развертываются как куча файлов JavaScript, других активов (HTML, CSS, media,…) и конфигурации, входящих в архив, зависящий от браузера. Браузер обычно предлагает бесшовный способ установки расширения непосредственно в браузере.
Плагины относятся к плагинам NPAPI, которые представляют собой предварительно скомпилированные двоичные файлы, которые улучшают функциональность браузеров через NPAPI. Эти плагины вызывают, вставляя <embed> или <object> в документ с определенным типом MIME. Плагины NPAPI специфичны для ОС (хотя исходный код может быть независимым от платформы), но не определен для одного браузера. Возможности NPAPI не ограничены браузером, поэтому ошибка в плагине браузера часто имеет серьезные последствия для безопасности (подумайте о Java, Adobe Flash Player, Adobe PDF Reader). Это одна из причин, почему поддержка NPAPI полностью исключается из Chrome. Плагины NPAPI обычно устанавливаются за пределами браузера, например, с помощью установщиков MSI в Windows.
Как сказано во введении, “плагины” и “расширения” используются взаимозаменяемо. Если вы слышите, что кто-то говорит о “плагинах” (браузерах), то вероятность того, что они на самом деле означают расширения браузера.