Chromium, V27.0.0 ve Node.js bileşenlerini temel alarak çoklu platform kullanıcı uygulamaları geliştirmek için kendi kendine yeterli bir çerçeve sağlayan Electron 8 platformunun sürümü yayınlandı. Sürüm numarasındaki önemli değişiklik; Chromium 118 kod tabanı, Node.js 18.17.1 platformu ve V8 11.8 JavaScript motorunda yapılan güncellemeden kaynaklanmaktadır.
Yeni sürümdeki değişiklikler arasında:
- WaylandWindowDecorations modu varsayılan olarak etkindir; bu, Wayland desteğiyle (--ozone-platform=wayland) çalışırken, XDG Dekorasyon protokolünü desteklemeyen GNOME ve Weston tabanlı Wayland ortamlarındaki pencereleri doğru şekilde yeniden boyutlandırmaya ve taşımaya olanak tanır. KDE ve Sway gibi XDG Dekorasyonunu destekleyen ortamlarda WaylandWindowDecorations modu göz ardı edilir.
- Uygulamalardaki arka plan şeffaflığının düzeyini kontrol eden sistem ayarlarını dikkate alacak bir API eklendi.
- Kendi JavaScript'inizi ve CSS'nizi sayfalara eklemenize olanak tanıyan chrome.scripting API'si için destek eklendi.
- SafeStorage.setUsePlainTextEncryption ve SafeStorage.getSelectedStorageBackend yöntemleri eklendi.
- TarayıcıWindow.showAllTabs API'si eklendi. TabbingIdentifier özelliği, TarayıcıWindow nesnesine eklendi. chrome.tabs.query API'si kısmen uygulandı.
- session.downloadURL() ve webContents.downloadURL() yöntemlerine belirli HTTP başlıklarını gönderme yeteneği eklendi.
- "--dns-result-order" bayrağı eklendi.
- В Linux "xdg settings" portalı üzerinden karanlık tema ayarlarını tanımlama özelliği eklendi.
- İki oluşturucu arasındaki iletişim için bir Mesaj Kanalı ile değiştirilmesi gereken ipcRenderer.sendTo() API'si kullanımdan kaldırıldı.
- webContents.getPrinters yöntemi, webContents.getPrintersAsync'in lehine kaldırılmıştır.
- systemPreferences.{get,set}AppLevelAppearance ve systemPreferences.appLevelAppearance yöntemleri kaldırıldı, bunların yerini nativeTheme modülü aldı.
- systemPreferences.getColor yöntemi, alternatif seçili kontrol metnini desteklemeyi durdurdu ve bunun yerine seçili içerik arka planını kullanmalıdır.
- SystemPreferences'ta, renk şeması değişikliği olayları kaldırıldı (ters çevrilmiş renk şeması değiştirildi ve yüksek kontrastlı renk şeması değiştirildi) yerine nativeTheme modülündeki güncellenmiş olay kullanılmalıdır).
- Destek sonlandırılmıştır. macOS 10.13 (Yüksek Sierra) ve macOS 10.14 (Mojave).
- Desteklenen son sürüm olan Electron 22.x'in bakım döngüsü sona ermiştir. Windows 7 / 8 / 8.1.
Electron platformu, mantığı JavaScript, HTML ve CSS'de tanımlanan tarayıcı teknolojilerini kullanarak her türlü grafik uygulamayı oluşturmanıza olanak tanır ve eklenti sistemi aracılığıyla işlevselliği genişletilebilir. Geliştiriciler, yerel diyaloglar oluşturmak, uygulamaları entegre etmek, içerik menüleri oluşturmak, bildirim görüntüleme sistemiyle entegrasyon, pencereleri değiştirmek ve Chromium alt sistemleriyle etkileşimde bulunmak için Node.js modüllerinin yanı sıra genişletilmiş bir API'ye de erişebilir.
Web uygulamalarının aksine, Electron tabanlı programlar bir tarayıcıya bağlı olmayan, kendi kendine yeten yürütülebilir dosyalar olarak sunulur. Geliştiricinin uygulamayı farklı platformlara taşımak konusunda endişelenmesine gerek yoktur; Electron, Chromium tarafından desteklenen tüm sistemler için derleme olanağı sağlar. Electron ayrıca güncellemeleri otomatik olarak dağıtma ve yükleme olanağı da sunar (güncellemeler ayrı bir yerden dağıtılabilir). sunucu(ayrıca doğrudan GitHub'dan da).
Electron platformunda geliştirilen programlar arasında Atom editörü, Mailspring e-posta istemcisi, Git ile çalışmak için kullanılan GitKraken aracı ve blog sistemi sayılabilir. WordPress Masaüstü uygulaması, BitTorrent istemcisi WebTorrent Desktop ve Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code ve Discord gibi hizmetler için resmi istemciler de dahil olmak üzere Electron uygulama kataloğunda 744 uygulama bulunmaktadır. Yeni uygulamaların geliştirilmesini kolaylaştırmak için, çeşitli sorunları çözmek için kod örnekleri de içeren bir dizi örnek demo uygulama hazırlanmıştır.
Kaynak: opennet.ru
