Se ha preparado el lanzamiento de la plataforma Electron 12.0.0, que proporciona un marco autónomo para el desarrollo de aplicaciones de usuario multiplataforma, utilizando como base componentes de Chromium, V8 y Node.js. El cambio significativo en el número de versión está relacionado con la actualización a la base de código de Chromium 89, la plataforma Node.js 14.16 y el motor JavaScript V8 8.9.
En esta nueva versión:
- Se ha realizado la transición a la nueva rama LTS de la plataforma Node.js 14 (anteriormente se utilizaba la rama 12.x).
- Se ha añadido una nueva API webFrameMain para acceder desde el proceso principal a la información sobre RenderFrame, ejecutándose en instancias separadas de WebContents. La API webFrameMain es equivalente a la API webFrame, pero se puede utilizar desde el proceso principal.
- Se han agregado métodos BrowserWindow.isTabletMode() y win.setTopBrowserView() a la API BrowserWindow, así como el parámetro webPreferences.preferredSizeMode y los eventos system-context-menu, resized (Windows/macOS) y moved (Windows).
- Por defecto, se activan las configuraciones contextIsolation y worldSafeExecuteJavaScript, que incluyen aislamiento adicional y mecanismos de protección al ejecutar JavaScript.
- Por defecto, se activa la configuración crashReporter.start({ compress }). Se ha eliminado la API de crashReporter obsoleta.
- Se ha proporcionado acceso a la API no objeto a través del método exposeInMainWorld en contextBridge.
- Se han añadido elementos individuales de API chrome.management a la API para el desarrollo de complementos.
- El módulo obsoleto 'remote' ha sido reemplazado por '@electron/remote'.
Recordemos que Electron permite crear cualquier aplicación gráfica utilizando tecnologías de navegador, cuya lógica de funcionamiento se define en JavaScript, HTML y CSS, y cuya funcionalidad se puede ampliar a través de un sistema de complementos. Los desarrolladores tienen acceso a módulos de Node.js, así como a una API ampliada para formar diálogos nativos, integrar aplicaciones, crear menús contextuales, integrar con el sistema de notificaciones, manipular ventanas e interactuar con subsistemas de Chromium.
A diferencia de las aplicaciones web, los programas basados en Electron se entregan como archivos ejecutables autónomos, no vinculados a un navegador. De este modo, el desarrollador no necesita preocuparse por portar la aplicación a diferentes plataformas, Electron permite la posibilidad de compilación para todos los sistemas soportados en Chromium. Electron también proporciona medios para organizar la entrega e instalación automática de actualizaciones (las actualizaciones se pueden entregar tanto desde un separado servidores, como directamente desde GitHub).
Entre los programas construidos sobre la plataforma Electron, se destacan el editor Atom, los clientes de correo Nylas y Mailspring, la herramienta de trabajo con Git GitKraken, el sistema de gestión de blogs WordPress Desktop, el cliente de BitTorrent WebTorrent Desktop, así como los clientes oficiales para servicios como Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code y Discord. En total, el catálogo de programas de Electron presenta 1016 aplicaciones. Para facilitar el desarrollo de nuevas aplicaciones, se ha preparado un conjunto de aplicaciones de demostración estándar que incluyen ejemplos de código para resolver diversas tareas.
Fuente: opennet.ru
