Spec-Zone.ru › Electron

Глоссарий

Эта страница определяет некоторые термины, которые часто используются в разработке Electron.

ASAR​

ASAR расшифровывается как Atom Shell Archive Format. Архив asar — это простой tar-формат, который склеивает файлы в один. Electron может читать произвольные файлы из него без распаковки всего файла.

Формат ASAR был создан в первую очередь для повышения производительности в Windows при чтении большого количества небольших файлов (например, при загрузке дерева зависимостей JavaScript вашего приложения из node_modules).

цифровая подпись кода​

Цифровая подпись кода — это процесс, в котором разработчик приложения цифрово подписывает свой код, чтобы гарантировать, что он не был изменен после упаковки. Windows и macOS реализуют свои собственные версии цифровой подписи кода. Как разработчик приложений для настольных компьютеров, важно подписывать свой код, если вы планируете распространять его широкой публике.

Дополнительную информацию можно найти в учебном пособии Цифровая подпись кода.

изоляция контекста​

Изоляция контекста — это мера безопасности в Electron, которая гарантирует, что ваш скрипт preload не может раскрыть привилегированные API Electron или Node.js содержимому веб-страниц в процессе renderer. При включенной изоляции контекста единственный способ экспонировать API из скрипта preload — через API contextBridge.

Дополнительную информацию можно найти в учебном пособии Изоляция контекста.

См. также: скрипт preload, процесс renderer

CRT​

Библиотека C Runtime (CRT) — это часть Стандартной библиотеки C++, которая включает в себя стандартную библиотеку ISO C99. Библиотеки Visual C++, реализующие CRT, поддерживают разработку нативного кода, а также смешанного нативного и управляемого кода и чисто управляемого кода для разработки .NET.

DMG​

Apple Disk Image — формат упаковки, используемый macOS. DMG-файлы обычно используются для распространения установочных файлов приложений.

IME​

Редактор метода ввода (Input Method Editor). Программа, которая позволяет пользователям вводить символы и знаки, отсутствующие на их клавиатуре. Например, это позволяет пользователям с латинскими клавиатурами вводить китайские, японские, корейские и индийские символы.

IDL​

Язык описания интерфейса (Interface Description Language). Описывает сигнатуры функций и типы данных в формате, который можно использовать для генерации интерфейсов на Java, C++, JavaScript и т. д.

IPC​

IPC означает межпроцессное взаимодействие. Electron использует IPC для отправки сериализованных сообщений JSON между основным и процессами renderer.

См. также: основной процесс, процесс renderer

основной процесс​

Основной процесс, обычно файл с именем main.js, является точкой входа в каждое приложение Electron. Он управляет жизненным циклом приложения, от открытия до закрытия. Он также управляет нативными элементами, такими как меню, строка меню, док, системный трей и т. д. Основной процесс отвечает за создание каждого нового процесса renderer в приложении. Полный API Node встроен.

Файл основного процесса каждого приложения указан в свойстве main в package.json. Так electron . знает, какой файл выполнить при запуске.

В Chromium этот процесс называется «процессом браузера». В Electron он переименован, чтобы избежать путаницы с процессами renderer.

См. также: процесс, процесс renderer

MAS​

Аббревиатура от Mac App Store компании Apple. Подробную информацию о подаче вашего приложения в MAS см. в руководстве подачи в Mac App Store.

Mojo​

Система IPC для межпроцессного взаимодействия, что важно, так как Chrome стремится к возможности разделять свою работу на отдельные процессы или нет, в зависимости от нагрузки на память и т. д.

См. https://chromium.googlesource.com/chromium/src/+/main/mojo/README.md

См. также: IPC

MSI​

В Windows MSI-пакеты используются службой Windows Installer (также известной как Microsoft Installer) для установки и настройки приложений.

Дополнительную информацию можно найти в документации Майкрософт.

нативные модули​

Нативные модули (также называемые расширениями в Node.js) — это модули, написанные на C или C++, которые можно загрузить в Node.js или Electron с помощью функции require() и использовать, как обычный модуль Node.js. Они используются в основном для обеспечения интерфейса между JavaScript, работающим в Node.js, и библиотеками C/C++.

Нативные модули Node поддерживаются Electron, но поскольку Electron очень вероятно будет использовать другую версию V8, отличную от версии Node, установленной в вашей системе, при построении нативных модулей необходимо вручную указать расположение заголовков Electron.

Дополнительную информацию можно найти в учебном пособии [Нативные модули Node].

нотаризация​

Нотаризация — это специфичный для macOS процесс, в котором разработчик может отправить подписанное приложение на серверы Apple для проверки на вредоносные компоненты с помощью автоматизированной службы.

См. также: цифровая подпись кода

OSR​

OSR (отрисовка вне экрана) может использоваться для загрузки ресурсоёмких страниц в фоновом режиме, а затем их отображения (что будет намного быстрее). Она позволяет вам отрисовывать страницу без её отображения на экране.

Дополнительную информацию можно найти в учебном пособии [Отрисовка вне экрана][osr].

скрипт preload​

Скрипты preload содержат код, который выполняется в процессе renderer перед началом загрузки его веб-содержимого. Эти скрипты работают в контексте renderer, но им предоставляются дополнительные привилегии с доступом к API Node.js.

См. также: процесс renderer, изоляция контекста

процесс​

Процесс — это экземпляр компьютерной программы, которая выполняется. Приложения Electron, которые используют основной и один или несколько процессов renderer, фактически запускают несколько программ одновременно.

В Node.js и Electron каждый запущенный процесс имеет объект process. Этот объект является глобальным и предоставляет информацию о текущем процессе и контроль над ним. Как глобальный, он всегда доступен приложениям без использования require().

См. также: основной процесс, процесс renderer

процесс renderer​

Процесс renderer — это окно браузера в вашем приложении. В отличие от основного процесса, таких окон может быть несколько, и каждый из них выполняется в отдельном процессе. Они также могут быть скрытыми.

См. также: процесс, основной процесс

песочница​

Песочница — это функция безопасности, унаследованная от Chromium, которая ограничивает процессы renderer ограниченным набором разрешений.

Дополнительную информацию можно найти в учебном пособии Песочница процесса.

См. также: процесс

Squirrel​

Squirrel — это открытая платформа, которая позволяет приложениям Electron автоматически обновляться по мере выпуска новых версий. Подробнее об использовании Squirrel см. API autoUpdater.

пользовательское пространство​

Этот термин произошел из сообщества Unix, где «пользовательское пространство» или «пространство пользователя» относилось к программам, выполняющимся вне ядра операционной системы. В последнее время этот термин популяризировался в сообществе Node и npm, чтобы отличать функции, доступные в «ядре Node», от пакетов, опубликованных в репозитории npm более обширным сообществом «пользователей».

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

V8​

V8 — это открытый JavaScript-движок от Google. Он написан на C++ и используется в Google Chrome. V8 может работать автономно или быть встроенным в любое приложение C++.

Electron строит V8 как часть Chromium, а затем указывает Node на этот V8 при его построении.

Версии V8 всегда соответствуют версиям Google Chrome. Chrome 59 включает V8 5.9, Chrome 58 включает V8 5.8 и т. д.

END_OF_DOCUMENT_MARKER
  • v8.dev
  • nodejs.org/api/v8.html
  • docs/development/v8-development.md

webview​

webview теги используются для встраивания 'гостевого' контента (например, внешних веб-страниц) в ваше приложение Electron. Они похожи на iframeы, но отличаются тем, что каждый webview работает в отдельном процессе. У него нет тех же разрешений, что и у вашей веб-страницы, и все взаимодействия между вашим приложением и встроенным контентом будут асинхронными. Это защищает ваше приложение от встроенного контента.

© GitHub Inc.
Licensed under the MIT license.
https://www.electronjs.org/docs/latest/glossary

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API