Foi lançado o Electron 28.0.0, que fornece uma estrutura autônoma para o desenvolvimento de aplicativos de usuário multiplataforma, utilizando componentes do Chromium, V8 e Node.js como base. A alteração significativa do número da versão está relacionada à atualização da base de código do Chromium 120, da plataforma Node.js 18.18.2 e do motor JavaScript V8 12.0.
Entre as mudanças na nova versão:
- Foi adicionada a suporte a módulos JavaScript ESM (Módulos ECMAScript), criados de acordo com a especificação ECMAScript 6 e utilizados em aplicativos web em navegadores (anteriormente, o Electron suportava apenas módulos CommonJS, específicos do Node.js). Os módulos ESM podem ser utilizados tanto no próprio Electron quanto em manipuladores baseados na API UtilityProcess. O suporte aos módulos ESM também foi adicionado ao kit de ferramentas para construção e publicação de aplicativos Electron Forge.
- Na plataforma Linux, foi implementado o processamento da variável de ambiente ELECTRON_OZONE_PLATFORM_HINT, que simplifica a habilitação do suporte ao protocolo Wayland em aplicativos baseados na plataforma Electron (é possível evitar a adição do sinalizador "—ozone-platform-hint" no arquivo .desktop).
- No objeto Display, foram adicionadas as propriedades detected, maximumCursorSize e nativeOrigin.
- A configuração WebContents.backgroundThrottling foi alterada para o valor "false" por padrão, desativando a limitação da taxa de quadros durante a exibição de conteúdo por meio do objeto BrowserWindow.
- Foram removidos os métodos BrowserWindow.setTrafficLightPosition (deve-se usar BrowserWindow.setWindowButtonPosition), BrowserWindow.getTrafficLightPosition (deve-se usar BrowserWindow.getWindowButtonPosition), ipcRenderer.sendTo (deve-se usar MessageChannel) e app.runningUnderRosettaTranslation (deve-se usar app.runningUnderARM64Translation). O suporte aos eventos scroll-touch-[begin|end|edge] foi descontinuado.
A plataforma Electron permite a criação de qualquer aplicativo gráfico utilizando tecnologias web, cuja lógica de operação é definida em JavaScript, HTML e CSS, e cuja funcionalidade pode ser expandida através de um sistema de plugins. Os desenvolvedores têm acesso a módulos Node.js, bem como a uma API expandida para formação de diálogos nativos, integração de aplicativos, criação de menus contextuais, integração com o sistema de notificações, manipulação de janelas e interação com subsistemas do Chromium.
Ao contrário dos aplicativos da web, os programas baseados em Electron são fornecidos na forma de arquivos executáveis autossuficientes, não vinculados a um navegador. Assim, o desenvolvedor não precisa se preocupar em portar o aplicativo para diferentes plataformas; o Electron oferece a possibilidade de compilar para todos os sistemas suportados no Chromium. O Electron também fornece ferramentas para organizar a entrega e instalação automáticas de atualizações (as atualizações podem ser entregues tanto de um servidor separado servidor, quanto diretamente do GitHub).
Entre os programas construídos na plataforma Electron, destacam-se o editor Atom, o cliente de e-mail Mailspring, a ferramenta para trabalhar com Git GitKraken, o sistema de blog WordPress Desktop, o cliente BitTorrent WebTorrent Desktop, assim como os clientes oficiais de serviços como Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code e Discord. No total, o catálogo de programas Electron apresenta 756 aplicativos. Para facilitar o desenvolvimento de novos aplicativos, foi preparado um conjunto de aplicativos de demonstração padrão, incluindo exemplos de código para resolver diversas tarefas.
Fonte: opennet.ru
