Die Veröffentlichung der Plattform Electron 23.0.0 wurde vorbereitet, die ein eigenständiges Framework für die Entwicklung plattformübergreifender Desktop-Anwendungen bereitstellt, das auf den Komponenten Chromium, V8 und Node.js basiert. Die signifikante Versionsnummer ändert sich aufgrund eines Updates auf die Codebasis von Chromium 110, Node.js-Plattform 18.12.1 und der JavaScript-Engine V8 11.
Zu den Änderungen in der neuen Version gehören:
- Die Unterstützung für die WebUSB-API wurde hinzugefügt, die die direkte Interaktion mit spezialisierten Peripheriegeräten ermöglicht, die über den USB-Port angeschlossen sind. WebUSB ermöglicht die Arbeit mit USB-Geräten, ohne dass für das System spezielle Treiber installiert werden müssen, wobei die Logik der niederleveligen Interaktion im Einsatz definiert wird.
- Dem Display-Objekt wurde eine 'label'-Eigenschaft mit einem Textlabel hinzugefügt, das den Bildschirm deutlich identifiziert.
- Die API app.getPreferredSystemLanguages() wurde implementiert, um die im System ausgewählten Sprachen zu ermitteln.
- Die Methode SerialPort.forget() wurde hinzugefügt, die ein Promise zurückgibt, um die Schließung des seriellen Ports zu behandeln, sowie das Ereignis serial-port-revoked, das generiert wird, wenn der Zugriff auf den seriellen Port nach dem Schließen der Verbindung zu ihm widerrufen wird.
- Die API win.setHiddenInMissionControl wurde hinzugefügt, die es ermöglicht, das Anwendungsfenster im Mission Control-Interface auf macOS-Systemen auszublenden.
- Die veralteten Ereignisse scroll-touch-begin, scroll-touch-end und scroll-touch-edge wurden aus dem BrowserWindow-Objekt entfernt; stattdessen sollte das Ereignis input-event in WebContents verwendet werden.
- Die Unterstützung für die Betriebssysteme Windows 7, 8 und 8.1 sowie Windows Server 2012 und 2012 R2 wurde eingestellt.
Die Electron-Plattform ermöglicht die Erstellung beliebiger grafischer Anwendungen unter Verwendung von Webtechnologien, deren Logik mit JavaScript, HTML und CSS definiert wird und deren Funktionalität durch ein Plugin-System erweitert werden kann. Entwicklern stehen Node.js-Module sowie eine erweiterte API zur Verfügung, um native Dialoge zu erstellen, Anwendungen zu integrieren, Kontextmenüs zu erstellen, Benachrichtigungssysteme zu integrieren, Fenster zu manipulieren und mit den Subsystemen von Chromium zu interagieren.
Im Gegensatz zu Webanwendungen werden Electron-basierte Programme als eigenständige Executables ausgeliefert, die nicht an einen Browser gebunden sind. Dabei muss sich der Entwickler nicht um die Portierung der Anwendung auf verschiedene Plattformen kümmern, Electron gewährleistet die Möglichkeit, für alle Systeme, die von Chromium unterstützt werden, zu bauen. Electron bietet außerdem Mittel zur automatischen Lieferung und Installation von Updates (Updates können sowohl von einem separaten Server, als auch direkt von GitHub geliefert werden).
Von Programmen, die auf der Electron-Plattform basieren, sind der Editor Atom, der E-Mail-Client Mailspring, das Git-Tool GitKraken, das Blogging-System WordPress Desktop, der BitTorrent-Client WebTorrent Desktop sowie offizielle Clients für Dienste wie Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code und Discord zu nennen. Insgesamt sind im Electron-Katalog 734 Anwendungen vertreten. Um die Entwicklung neuer Anwendungen zu erleichtern, wurde ein Set von Muster-Demonstrationsanwendungen vorbereitet, die Beispielcode für die Lösung verschiedener Aufgaben enthalten.
Quelle: opennet.ru
