Electron (yazılım kütüphanesi)

Electron (eski adıyla Atom Shell), GitHub tarafından geliştirilen ve bakımı yapılan özgür ve açık kaynaklı bir yazılım iskeletidir. Çerçeve, Chromium tarayıcı motorunun bir çeşidi kullanılarak oluşturulan web teknolojilerini (esas olarak HTML, CSS ve JavaScript ancak ön uç çerçeveleri ve WebAssembly gibi diğer teknolojiler de mümkündür) ve Node.js çalışma ortamını kullanarak masaüstü uygulamaları oluşturmak için tasarlanmıştır. Ek olarak, Düğüm hizmetleriyle yerel entegrasyon ve süreçler arası iletişim modülü gibi şeylere izin vermek için çeşitli API'ler de kullanır.

Başlangıçta Atom için hazırlanmıştır. Electron; Atom, GitHub Desktop, Light Table, Visual Studio Code, WordPress Desktop, ve Eclipse Theia dahil olmak üzere birçok açık kaynaklı projenin arkasındaki ana GUI çerçevesidir.

Mimari 
Elektron uygulamaları birden fazla işlemi içerir. "main" süreci ve birkaç "render" süreci vardır. Ana işlem, uygulamanın mantığını çalıştırır (örn. menüler, kabuk komutları, yaşam döngüsü olayları) ve daha sonra, HTML ve CSS'yi görüntüleyen bir kullanıcının ekranında görünen bir pencereyi yükleyen  sınıfının bir örneğini başlatarak birden çok oluşturucu işlemini başlatabilir.

Ana  alanı  olarak ayarlanmışsa, hem ana hem de oluşturucu işlemleri Node.js entegrasyonu ile çalışabilir

Electron'un API'lerinin çoğu C++ veya Objective-C ile yazılmıştır ve ardından JavaScript bağlamaları aracılığıyla doğrudan uygulama koduna maruz bırakılır.

Tarihçe 
Eylül 2021'de Electron, Chromium Extended Stable'ın yayın döngüsüne uymak ve tarayıcı tabanlı uygulamaların en son sürümlerden 2 ana sürümde olmasını gerektiren Microsoft Mağazası'nın tarayıcı motorunun serbest bırakılmasını isteyen yeni gereksinimine uymak için ana sürümler arasında 8 haftalık bir sürüm döngüsüne geçti.

Electron, en son üç kararlı ana sürümü aktif olarak destekler. Eylül 2021'den Mayıs 2022'ye kadar, sürüm döngülerindeki değişiklik nedeniyle dört ana sürüm geçici olarak desteklendi.

Tepkiler 
Electron ile oluşturulmuş masaüstü uygulamaları arasında Atom, balenaEtcher, Eclipse Theia, Microsoft Teams, Slack ve Visual Studio Code bulunur. Ek olarak, Brave Browser, doğrudan Chromium'u kullanarak yeniden yazılmadan önce Electron temelli idi.

Electron'un en yaygın eleştirisi, basit programlar için kullanıldığında yazılım şişmesi gerektirmesidir. Sonuç olarak, Michael Larabel, çerçeveyi "çoğu Linux masaüstü kullanıcısı arasında kaynak açısından yoğun olması, çoğu masaüstüyle iyi bütünleşmemesi ve genel olarak küçümsenmesi nedeniyle kötü şöhretli" olarak nitelendirdi. Bu arada Joey Sneddon, Electron'un platformlar arası yazılım geliştirme ve bakım maliyetini büyük ölçüde azalttığı için bu ödünleşimin mantıklı olduğunu belirtiyor.

Araştırmacılar, düz metin JavaScript dosyaları aracılığıyla erişildiğinden, Electron'un geniş özellik setinin kötü amaçlı yazılımlar tarafından ele geçirilebileceğini göstermiştir. Electron'un her zaman Chromium'un en yeni sürümünü temel almadığı gerçeğinden endişe duyanlar, alternatif olarak ileri web uygulamalarını önerdiler.

Ayrıca bakınız 

 Apache Cordova
 Chromium Embedded Framework (CEF)
 HTML Application
 Qt WebEngine
 XULRunner
 JavaFX WebView
 DotNetBrowser

Kaynakça

Dış bağlantılar 
 

2013 yazılımları
Özgür ve açık kaynak kodlu yazılım
GitHub
MIT Lisansı kullanan yazılımlar
Google Chrome
Çapraz platform yazılımları
İncelenmemiş çeviri içeren sayfalar