udgivelse af platformen , som tilbyder et selvstændigt framework til udvikling af multiplatform-brugerapplikationer, der bruger komponenter fra Chromium, V8 og Node.js. Den betydelige ændring i versionsnummeret skyldes opdateringen til kodebasen , platformen og JavaScript-motor V8 7.3. Tidligere ophør af support til 32-bit Linux-systemer er midlertidigt udskudt, og udgivelsen
5.0 inklusive i 32-bit versioner.
Blandt i API, der er specifikke for Electron:
- I API'et er oversættelsen af asynkrone behandlere, som tidligere brugte callback-kald, fortsat til en form baseret på mekanismen . Understøttelse af Promise er blevet tilføjet i Cookies API'et og i metoderne app.getFileIcon, contentTracing.[getCategories| startRecording| stopRecording], debugger.sendCommand,
shell.openExternal, webContents.[loadFile| loadURL| zoomLevel| zoomFactor] og win.capturePage; - Muligheden for at få information om systemfarver i
macOS er blevet tilføjet ved hjælp af kald til systemPreferences.getAccentColor,
systemPreferences.getColor og systemPreferences.getSystemColor; - Funktionen process.getProcessMemoryInfo, der giver statistikker om hukommelsesforbruget for den aktuelle proces, er blevet tilføjet;
- I modulet 'remote', der repræsenterer IPC-mekanismen til interaktion mellem den aktuelle siderenderingsproces og hovedprocessen, er der tilføjet yderligere muligheder for filtrering af eksterne forespørgsler for at opnå fuld kontrol over tilgangen til IPC. Understøttelse af filtre er tilføjet til kald remote.getBuiltin, remote.getCurrentWindow, remote.getCurrentWebContents og webview.getWebContents;
- Muligheden for at styre flere instanser af BrowserViews fra et enkelt BrowserWindow-objekt er blevet tilføjet;
- I pakkede applikationer er der sikret tilføjelse af standard applikationsmenuen, selvom applikationen ikke eksplicit definerer denne menu eller tilføjer en lukkevindue-hændelsesbehandler;
- Mixed sandbox-isolationsmode er aktiveret som standard, hvor både renderingsprocessen kører i sandbox;
- Der er tilføjet en miljøvariabel 'ELECTRON_DISABLE_SANDBOX' til at deaktivere sandbox-isolationsmode, hvis applikationen allerede kører i en container baseret på Docker;
- For at forbedre sikkerheden er nodeIntegration og webviewTag som standard deaktiveret;
- API'et til stavekontrol (Spellchecker) er blevet ændret til ikke-blokerende drift, hvor resultatet returneres asynkront;
- Er blevet erklæret forældet og vil blive fjernet i næste udgave:
udførelsesfilerne mksnapshot til arm og arm64, ServiceWorker i WebContents, kald webFrame.setIsolated*, muligheden for direkte at kalde modulerne electron.screen,
child_process,
fs,
os og path (nu skal de kaldes via remote.require med brug af handler i isoleret WebContents).
Det skal bemærkes, at Electron muliggør oprettelse af enhver grafisk applikation ved hjælp af webteknologier, hvor logikken er baseret på JavaScript, HTML og CSS, og funktionaliteten kan udvides gennem et plugin-system. Udviklere har adgang til Node.js-moduler samt et udvidet API til at oprette native dialoger, integrere applikationer, skabe kontekstmenuer, integrere med notifikationssystemet, håndtere vinduer og interagere med Chromium-subsystemerne.
I modsætning til webapplikationer leveres programmer bygget på Electron som selvstændige eksekverbare filer, der ikke er bundet til en browser. Udvikleren behøver ikke at bekymre sig om at portere applikationen til forskellige platforme; Electron sikrer, at der er mulighed for at bygge til alle systemer, der understøttes i Chromium. Electron giver også til organisering af automatisk levering og installation af opdateringer (opdateringer kan leveres fra en separat server eller direkte fra GitHub).
Blandt de programmer, der er bygget på Electron-platformen, kan vi nævne editoren , e-mailklienten , værktøjet til arbejde med Git , systemet til analyse og visualisering af SQL-forespørgsler , blogging-systemet WordPress Desktop, BitTorrent-klienten , samt officielle klienter til sådanne tjenester som Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code og Discord. I alt indeholder kataloget over Electron-programmer 760 applikationer. For at forenkle udviklingen af nye applikationer er der forberedt et sæt skabeloner , som inkluderer kodeeksempler til løsning af forskellige opgaver.
Kilde: opennet.ru
