ΠΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΎ Π΅ ΠΎΠ±ΡΠ°Π²ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Electron 12.0.0, ΠΊΠΎΡΠ° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΡΠ°ΠΌΠΎΠ΄ΠΎΠ²ΠΎΠ»Π½Π° ΡΠ°ΠΌΠΊΠ° Π·Π° ΡΠ°Π·Π²ΠΎΡ Π½Π° ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΊΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Chromium, V8 ΠΈ Node.js. ΠΠ½Π°ΡΠ°ΡΠ½Π°ΡΠ° ΠΏΡΠΎΠΌΠ΅Π½Π° Π½Π° Π±ΡΠΎΡΠΎΡ Π½Π° Π²Π΅ΡΠ·ΠΈΡΠ°ΡΠ° ΡΠ΅ Π΄ΠΎΠ»ΠΆΠΈ Π½Π° Π°ΠΆΡΡΠΈΡΠ°ΡΠ°ΡΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Chromium 89, ΡΠ°ΠΌΠΊΠ°ΡΠ° Node.js 14.16 ΠΈ V8 8.9 JavaScript ΠΌΠΎΡΠΎΡΠΎΡ.
ΠΠΎ Π½ΠΎΠ²ΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅:
- ΠΡΠ΅ΠΌΠΈΠ½ΠΎΡ ΠΊΠΎΠ½ Π½ΠΎΠ²Π°ΡΠ° LTS Π³ΡΠ°Π½ΠΊΠ° Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Node.js 14 Π΅ ΠΈΠ·Π²ΡΡΠ΅Π½Π° (ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΎ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π³ΡΠ°Π½ΠΊΠ°ΡΠ° 12.x).
- ΠΠΎΠ΄Π°Π΄Π΅Π½ΠΎ Π΅ Π½ΠΎΠ²ΠΎ webFrameMain API Π·Π° ΠΏΡΠΈΡΡΠ°ΠΏ ΠΎΠ΄ Π³Π»Π°Π²Π½ΠΈΠΎΡ ΠΏΡΠΎΡΠ΅Ρ Π΄ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° RenderFrames ΡΡΠΎ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Π°Ρ Π½Π° ΠΏΠΎΠ΅Π΄ΠΈΠ½Π΅ΡΠ½ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠΎΡΠΈ Π½Π° WebContents. WebFrameMain API Π΅ Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π½Π° webFrame API, Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΠΎΠ΄ Π³Π»Π°Π²Π½ΠΈΠΎΡ ΠΏΡΠΎΡΠ΅Ρ.
- BrowserWindow API Π³ΠΈ Π΄ΠΎΠ΄Π°Π΄Π΅ ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ BrowserWindow.isTabletMode() ΠΈ win.setTopBrowserView(), ΠΊΠ°ΠΊΠΎ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΠ°ΡΠΎΡ webPreferences.preferredSizeMode ΠΈ ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΎΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΡΠ°Π»Π½ΠΎ ΠΌΠ΅Π½ΠΈ, ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π° (Windows/macOS) ΠΈ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ΅Π½ΠΈΡΠ΅ (Windows) Π½Π°ΡΡΠ°Π½ΠΈ.
- Π‘ΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΎ, ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΈ ΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈΡΠ΅ Π·Π° contextIsolation ΠΈ worldSafeExecuteJavaScript, ΠΊΠΎΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π°Π°Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡΠ° ΠΈ Π·Π°ΡΡΠΈΡΠ° ΠΏΡΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π½Π° JavaScript.
- Π‘ΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΎ, ΠΏΠΎΡΡΠ°Π²ΠΊΠ°ΡΠ° crashReporter.start({ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ° }) Π΅ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½Π°. ΠΡΡΡΡΠ°Π½Π΅Ρ Π·Π°ΡΡΠ°ΡΠ΅Π½ΠΈΠΎΡ crashReporter API.
- ΠΠ±Π΅Π·Π±Π΅Π΄Π΅Π½Π° ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ Π½Π΅-ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΈ API ΠΏΡΠ΅ΠΊΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΡ exposeInMainWorld Π²ΠΎ contextBridge.
- ΠΠΎΠ΅Π΄ΠΈΠ½Π΅ΡΠ½ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π½Π° chrome.management API ΡΠ΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΈ Π²ΠΎ ΡΠ°Π·Π²ΠΎΡΠ½ΠΈΠΎΡ API Π·Π° Π΄ΠΎΠ΄Π°ΡΠΎΡΠΈ.
- ΠΠ°ΡΡΠ°ΡΠ΅Π½ΠΈΠΎΡ βΠ΄Π°Π»Π΅ΡΠΈΠ½ΡΠΊΠΈβ ΠΌΠΎΠ΄ΡΠ» Π΅ ββΠ·Π°ΠΌΠ΅Π½Π΅Ρ ΡΠΎ β@electron/Remoteβ.
ΠΠ° ΠΏΠΎΡΡΠ΅ΡΠΈΠΌΠ΅, Electron Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° ΠΊΡΠ΅ΠΈΡΠ°ΡΠ΅ Π±ΠΈΠ»ΠΎ ΠΊΠ°ΠΊΠ²ΠΈ Π³ΡΠ°ΡΠΈΡΠΊΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π½Π° ΠΏΡΠ΅Π»ΠΈΡΡΡΠ²Π°Ρ, ΡΠΈΡΠ° Π»ΠΎΠ³ΠΈΠΊΠ° Π΅ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½Π° Π²ΠΎ JavaScript, HTML ΠΈ CSS, Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠΈ ΠΏΡΠ΅ΠΊΡ ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° Π΄ΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΡΠΎΠ³ΡΠ°ΠΌΠ΅ΡΠΈΡΠ΅ ΠΈΠΌΠ°Π°Ρ ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ ΠΌΠΎΠ΄ΡΠ»ΠΈΡΠ΅ Node.js, ΠΊΠ°ΠΊΠΎ ΠΈ ΠΏΡΠΎΡΠΈΡΠ΅Π½ API Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΡΠΈΡΠΎΠ΄Π½ΠΈ Π΄ΠΈΡΠ°Π»ΠΎΠ·ΠΈ, ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°ΡΠ΅ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ, ΡΠΎΠ·Π΄Π°Π²Π°ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΈ ΠΌΠ΅Π½ΠΈΡΠ°, ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°ΡΠ΅ ΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ΅, ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠ°ΡΠ΅ ΡΠΎ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ ΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΠΈ Chromium.
ΠΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΠ΄ Π²Π΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈΡΠ΅, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ΅ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° Π΅Π»Π΅ΠΊΡΡΠΎΠ½ΠΈ ΡΠ΅ ΠΈΡΠΏΠΎΡΠ°ΡΡΠ²Π°Π°Ρ ΠΊΠ°ΠΊΠΎ ΡΠ°ΠΌΠΎΡΡΠΎΡΠ½ΠΈ ΠΈΠ·Π²ΡΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΊΠΎΠΈ Π½Π΅ ΡΠ΅ Π²ΡΠ·Π°Π½ΠΈ Π·Π° ΠΏΡΠ΅Π»ΠΈΡΡΡΠ²Π°Ρ. ΠΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅, ΡΠ°Π·Π²ΠΈΠ²Π°ΡΠΎΡ Π½Π΅ ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ Π³ΡΠΈΠΆΠΈ Π·Π° ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°ΡΠ΅ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ, Electron ΡΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π³ΡΠ°Π΄Π΅ΡΠ΅ Π·Π° ΡΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½ΠΈ Π²ΠΎ Chromium. Electron, ΠΈΡΡΠΎ ΡΠ°ΠΊΠ°, ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π°Π»Π°ΡΠΊΠΈ Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°ΡΠ΅ Π½Π° Π°Π²ΡΠΎΠΌΠ°ΡΡΠΊΠ° ΠΈΡΠΏΠΎΡΠ°ΠΊΠ° ΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ Π½Π° Π°ΠΆΡΡΠΈΡΠ°ΡΠ° (Π°ΠΆΡΡΠΈΡΠ°ΡΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π΄ΠΎΡΡΠ°Π²ΡΠ²Π°Π°Ρ ΠΈΠ»ΠΈ ΠΎΠ΄ ΠΏΠΎΡΠ΅Π±Π΅Π½ ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠ»ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΠ΄ GitHub).
ΠΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ΅ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ΠΈ Π½Π° Electron ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Π²ΠΊΠ»ΡΡΡΠ²Π°Π°Ρ Atom ΡΡΠ΅Π΄Π½ΠΈΠΊ, Nylas ΠΈ Mailspring ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ Π·Π° Π΅-ΠΏΠΎΡΡΠ°, GitKraken Π°Π»Π°ΡΠΊΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° ΡΠΎ Git, ΡΠΈΡΡΠ΅ΠΌ Π·Π° Π±Π»ΠΎΠ³ΠΈΡΠ°ΡΠ΅ Π½Π° WordPress Desktop, WebTorrent Desktop BitTorrent ΠΊΠ»ΠΈΠ΅Π½Ρ, ΠΊΠ°ΠΊΠΎ ΠΈ ΠΎΡΠΈΡΠΈΡΠ°Π»Π½ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ Π·Π° ΡΡΠ»ΡΠ³ΠΈ ΠΊΠ°ΠΊΠΎ Skype, Signal, Slack, Basecamp , Twitch, Ghost, Wire, Wrike, Visual Studio Code ΠΈ Discord. Π‘Π΅Π²ΠΊΡΠΏΠ½ΠΎ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈΠΎΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Electron ΡΠΎΠ΄ΡΠΆΠΈ 1016 Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ. ΠΠ° Π΄Π° ΡΠ΅ ΠΏΠΎΠ΅Π΄Π½ΠΎΡΡΠ°Π²ΠΈ ΡΠ°Π·Π²ΠΎΡΠΎΡ Π½Π° Π½ΠΎΠ²ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ, ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ Π΅ ΡΠ΅Ρ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈ Π΄Π΅ΠΌΠΎ-Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ, Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠΈ Π·Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π·Π° ΡΠ΅ΡΠ°Π²Π°ΡΠ΅ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ.
ΠΠ·Π²ΠΎΡ: opennet.ru