Die Version 23.0.0 der Electron-Plattform wurde veröffentlicht, die ein eigenständiges Framework für die Entwicklung plattformübergreifender Benutzeranwendungen bereitstellt und auf den Komponenten Chromium, V8 und Node.js basiert. Die signifikante Änderung der Versionsnummer ist auf das Update auf die Chromium-Codebasis 110, die Node.js-Plattform 18.12.1 und die JavaScript-Engine V8 11 zurückzuführen.
Die Änderungen in der neuen Version umfassen:
- Die Unterstützung der WebUSB-API wurde hinzugefügt, die eine 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 spezielle Treiber im System installiert werden müssen, da die Logik für die Low-Level-Interaktion im Anwendungscode definiert wird.
- Im Display-Objekt wurde die Eigenschaft „label“ hinzugefügt, die eine textuelle Bezeichnung enthält, die den Bildschirm eindeutig 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 das Schließen des seriellen Ports zu verarbeiten. Zudem wurde das Ereignis serial-port-revoked implementiert, das ausgelöst wird, wenn der Zugriff auf den seriellen Port nach Schließen der Verbindung zurückgerufen wird.
- Die API win.setHiddenInMissionControl wurde hinzugefügt, die es ermöglicht, das Anwendungsfenster im Mission Control Interface auf macOS-Systemen zu verstecken.
- Die veralteten Ereignisse scroll-touch-begin, scroll-touch-end und scroll-touch-edge wurden aus dem Objekt BrowserWindow entfernt. Stattdessen sollte das Ereignis input-event in WebContents verwendet werden.
- Der Support 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 in JavaScript, HTML und CSS definiert ist. Die Funktionalität kann durch ein Plugin-System erweitert werden. Entwicklern stehen Node.js-Module sowie eine erweiterte API zur Verfügung, um native Dialoge zu erstellen, Anwendungen zu integrieren, Kontextmenüs zu erzeugen, mit dem Benachrichtigungssystem zu interagieren, Fenster zu manipulieren und mit den Chromium-Subsystemen zu kommunizieren.
Im Gegensatz zu Webanwendungen werden Programme auf Basis von Electron als eigenständige ausführbare Dateien bereitgestellt, die nicht an einen Browser gebunden sind. Dadurch braucht der Entwickler sich keine Gedanken über die Portierung der Anwendung auf verschiedene Plattformen zu machen, da Electron die Möglichkeit bietet, für alle im Chromium unterstützten Systeme zu bauen. Electron stellt auch Werkzeuge zur Verfügung, um automatische Bereitstellung und Installation von Updates zu organisieren (Updates können sowohl von einem separaten Server, als auch direkt von GitHub geliefert werden).
Zu den Programmen, die auf der Electron-Plattform basieren, gehören 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. Insgesamt sind im Katalog der Electron-Programme 734 Anwendungen verfügbar. Zur Vereinfachung der Entwicklung neuer Anwendungen wurde ein Satz von typischen Demoprogrammen erstellt, der Beispielcode zur Lösung verschiedener Aufgaben enthält.
Quelle: opennet.ru
