rilascio della piattaforma , che offre un framework autonomo per lo sviluppo di applicazioni utente multipiattaforma, basato su componenti di Chromium, V8 e Node.js. Il significativo cambiamento del numero di versione è dovuto all'aggiornamento della base di codice , piattaforma e il motore JavaScript V8 7.3. In precedenza il termine del supporto per i sistemi Linux a 32 bit è stato posticipato e il rilascio
5.0 inclusi nelle build a 32 bit.
Tra nell'API specifica per Electron:
- Nell'API è proseguita la conversione dei gestori asincroni, precedentemente utilizzanti chiamate callback, in una forma basata sul meccanismo . Il supporto per Promise è stato aggiunto all'API Cookies e ai metodi app.getFileIcon, contentTracing.[getCategories|startRecording|stopRecording], debugger.sendCommand,
shell.openExternal, webContents.[loadFile|loadURL|zoomLevel|zoomFactor] e win.capturePage; - È stata aggiunta la possibilità di ottenere informazioni sui colori di sistema in
macOS, utilizzando le chiamate systemPreferences.getAccentColor,
systemPreferences.getColor e systemPreferences.getSystemColor; - È stata aggiunta la funzione process.getProcessMemoryInfo, che fornisce statistiche sull'uso della memoria da parte del processo attuale;
- Nel modulo ‘remote’, che rappresenta il meccanismo IPC per l'interazione tra il processo di rendering della pagina corrente e il processo principale, sono state aggiunte funzionalità aggiuntive per filtrare le richieste esterne, per ottenere un controllo completo sull'accesso a IPC. Il supporto per i filtri è stato aggiunto per le chiamate remote.getBuiltin, remote.getCurrentWindow, remote.getCurrentWebContents e webview.getWebContents;
- È stata aggiunta la possibilità di gestire più istanze di BrowserViews da un unico oggetto BrowserWindow;
- Nelle applicazioni impacchettate, è garantito l'aggiunta del menu dell'applicazione predefinito, anche se l'app non definisce esplicitamente tale menu e non aggiunge il gestore dell'evento di chiusura della finestra;
- Il modo di funzionamento misto della sandbox è attivato per impostazione predefinita, in cui anche il processo di rendering viene avviato all'interno della sandbox;
- È stata aggiunta la variabile d'ambiente «ELECTRON_DISABLE_SANDBOX» per disattivare l'isolamento della sandbox, ad esempio, se l'applicazione viene già eseguita in un contenitore basato su Docker;
- Per aumentare la sicurezza, per impostazione predefinita sono disattivate le impostazioni nodeIntegration e webviewTag;
- L'API di controllo ortografico (Spellchecker) è stata convertita in modalità di lavoro non bloccante, in cui il risultato del controllo viene restituito in modo asincrono;
- Dichiarati obsoleti e verranno rimossi nella prossima versione:
i file eseguibili mksnapshot per arm e arm64, ServiceWorker in WebContents, le chiamate a webFrame.setIsolated*, la possibilità di chiamare direttamente i moduli electron.screen,
child_process,
fs,
os e path (ora devono essere chiamati tramite remote.require utilizzando un gestore in WebContents isolato).
Ricordiamo che Electron consente di creare qualsiasi applicazione grafica utilizzando tecnologie browser, la logica di funzionamento delle quali è definita in JavaScript, HTML e CSS, mentre la funzionalità può essere ampliata tramite un sistema di estensioni. Gli sviluppatori hanno accesso ai moduli Node.js, così come a un API avanzata per la creazione di dialoghi nativi, integrazione delle applicazioni, creazione di menu contestuali, integrazione con il sistema di notifiche, manipolazione delle finestre e interazione con le sottosistemi di Chromium.
A differenza delle web app, i programmi basati su Electron vengono forniti come file eseguibili autonomi, non legati a un browser. Così, gli sviluppatori non devono preoccuparsi di portare l'applicazione su diverse piattaforme, poiché Electron consente di compilarla per tutti i sistemi supportati in Chromium. Electron fornisce inoltre per organizzare la distribuzione e l'installazione automatica degli aggiornamenti (questi possono essere forniti sia da un server separato che direttamente da GitHub).
Tra i programmi costruiti sulla piattaforma Electron possiamo citare l'editor , un client di posta , gli strumenti per lavorare con Git , il sistema di analisi e visualizzazione delle query SQL , il sistema di blogging WordPress Desktop, il client BitTorrent , e anche i client ufficiali per servizi come Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code e Discord. In totale, nel catalogo delle applicazioni Electron 760 applicazioni. Per facilitare lo sviluppo di nuove applicazioni, è stato preparato un set di modelli , che includono esempi di codice per risolvere varie problematiche.
Fonte: opennet.ru
