Masaüstü uygulamalar geliştirmek üzere tasarlanmış olan Electron Js, Node Js ve Chromium tabanlı JavaScript frameworküdür. HTML, CSS ve JavaScript kullanarak masaüstü uygulamalar geliştirmek için kullanılmaktadır. HTML, CSS ve JavaScript bilen tasarımcıların masaüstü uygulamalar geliştirmesini kolaylaştıran açık kaynak (open source) bir çalışmadır.
Bu yazıda neler öğreneceğiz?
Electron JS nedir.
Nerelerde kullanılır.
Ne üzerine kurgulanmıştır ve hangi teknolojinleri barındır.
Electron JS öğrenmeli miyim?
Electron JS ile neler yapılabilir.
Electron Js Nedir?
Electron Js bir JavaScript frameworküdür. Mac, Windows ve Linux tabanlı uygulamalar geliştirmek için kullanılmaktadır. Geniş bir geliştirici ekibi olan bu proje devamlı güncelleniyor. Eğer HTML, CSS ve JavaScript kullanarak web sayfası tasarımı yapabiliyorsanız Electron Js kullanarak kendi masaüstü uygulamalarını da geliştirebilirsiniz demektir.
Peki C, C++ gibi bir çok farklı programlama dili varken neden Electron Js kullanmalıyız sorusunu sorabilirsiniz. Aslında cevabı oldukça basit. Eğer JavaScript biliyorsanız tüm platformlarda çalışan bir uygulama yazmak için yeni bir dil öğrenmektense bildiğiniz dili kullanmanız oldukça mantıklı olacaktır.
Kısaca Tarihçesi
Ocak 2013 yılında tüm platformlarda çalışabilecek HTML, CSS, JavaScript temelli bir metin düzenleyici oluşturulmak üzere bir araç olarak geliştirilmeye başlandı. GitHub’da bir mühendis olarak çalışan Cheng Zhao tarafından geliştirilmeye başlanan proje, ilk olarak Atom editörünün geliştirilmesinde kullanıldı. Daha sonra ise 2015’de Electron Js olarak isimlendirildi. 2016 yılında ise 1.0 sürümü yayınladı.

Temel Özellikleri Nelerdir?
Kısaca bahsettiğimiz Electron Js kullanacaklar için temel özellikleri şöyle sıralayabiliriz.
- HTML, CSS ve JavaScript temelli bir geliştirme ortamıdır. Bu nedenle web sayfası tasarlayanların masaüstü uygulama geliştirmelerini oldukça kolay bir hale getiriyor.
- Açık kaynak bir projedir ve OpenJS Foundation tarafından desteklenmektedir. Çok sayıca geliştiricisi bulunmaktadır.
- Çapraz platform ( cross platform ) bir yapıya sahiptir bu nedenle web teknolojinlerini destekleyen hemen her alanda çalışır. Window, Mac ve Linux sistemlerde çalışan uygulamalar geliştirilebilir.
- Otomatik güncellenme desteği ile gelir. Bu nedenle uygulamalar kendilerini güncelleyebilir.
- Native (yerel) uygulama menüleri ve bağlam menüleri oluşturmayı destekler ve kolaylaştırır.
- Kilitlenme durumlarında kilitlenme raporlarını (crash reports) uzak bir sunucuya gönderebilir.
- Windows otomatik kurulum paket yöneticilerine sahiptir.
- JavaScript için geliştirilmiş kütüphaneleri kullanabilirsiniz.
Neden Elektron Js Tercih Edilmeli?
Masaüstü uygulama geliştirenler için önemli olan birçok işlemi başarı ile halleder. Kurulum, paketleme, yerel menüler ve diyalog pencereleri için destek sağlar. Uygulamanın çökme durumlarında oluşturduğu otomatik raporlar ile kodu optimize etmek ve güncellemek oldukça kolaylaşır.
Web uygulamaları yazarken tarayıcı bağımlılığı önemlidir. Çünkü web sayfası hangi bilgisayarda ve hangi tarayıcıda açılacağı bilinmemektedir. Buna göre bir tasarım yapılması gerekir. Oysa Electron ile bir masaüstü uygulama geliştirdiğinizde paketleme yaparken Node ve Chromium tarayıcısının belirli bir sürümünü kullanmayı garantilersiniz.
Bunların yanında daha önce bahsettiğimiz gibi zaten bir web geliştiricisi iseniz masaüstü uygulama yazmak için hazırsınız demektir.
React, Vue gibi bir çok kütüphane kullanılmak için hazır beklemektedir.
Electron Js Kullanmak İçin Neler Gerekli?
Electron Js kullanmak için öncelikle temel HTML, CSS ve JavaScript bilgisinin olması gerekli. Uygulama geliştirilecek bilgisayarda Node.JS kurulu olması gerekiyor. Yeni proje başlattığınızda Electron.Js’yi kurmanız yeterli olacaktır. Kullandığınız JavaScript geliştirme ortamı ile işleminize devam edebilirsiniz.

Electron Js İle Neler Geliştirilebilir?
Electroj Js ile neler yapılabilir sorusunun cevabı genel olarak yapmak istediğiniz herşey olacaktır. Çünkü basit bir yapılacaklar listesi uygulamasından gelişmiş bir metin editörüne kadar istediğiniz bir uygulamayı geliştirebilirsiniz. Hatta isterseniz oyun bile yazabilirsiniz.
Genel olarak JavaScript ile yapabildiğiniz her uygulamayı Electron Js ile de yapabilirsiniz. Bu nedenle bir sınırlama getirmek gerekmiyor.
Electron Js İle Geliştirilmiş Popüler Uygulamalar Nelerdir?
Electron Js ile çok sayıda uygulama geliştirildi ve yeni masaüstü uygulamaları da geliştirilmeye devam ediyor. Bu yazıyı okuduğunuza göre sizin de en az bir uygulama geliştirmeniz mümkün görünüyor. Popüler olan uygulamaları sayacak olursak:
- Visual Studio Code
- Twitch
- Microsoft Teams
- InVison
Electron Js Alternatifi Diğer JavaScript Frameworkleri Nelerdir?
Electron Js gibi masaüstü uygulama geliştirmek için tasarlanmış farklı JavaScript frameworkleri de bulunmaktadır. Bunlardan dikkat çeken bazıları şunlardır.
- NW.js DOM üzerinden direkt olarak Node.js modüllerini çağırmaya izin veren tüm web teknolojilerini kullanarak masaüstü uygulamaları geliştirmek için tasarlanmış bir JavaScript frameworküdür. Node.js ve Chromium motoru üzerinde çalışır.
https://nwjs.io - AppJs basit ve etkili bir masaüstü uygulama geliştirme aracıdır. Node.Js üzerinde çalışır. HTML, CSS ve JavaScript ile aşina olanların uygulama geliştirmesini kolaylaştıran bir yapısı vardır.
http://appjs.com/ - Meteor, her cihaz ile uyumlu web teknolojilerini kullanarak uygulama geliştirmek üzere tasarlanmış bir JavaScript frameworküdür. Aşina olduğunuz popüler frameworkleri kullanmanıza olanak sağlar.
https://www.meteor.com/ - Proton Native, React ile aynı söz dizimene sahip olan bu kütüphane React kütüphanleri ile uyumlu çalışır. Electron Js gibi Chromium tabanlı değildir. React Native gibi sistemin kendi yerel araçlarını kullanır. Bu nedenle daha az yer kaplar ve daha az kaynağa ihtiyaç duyan bir yapısı vardır. React Native gibi çalışır.
https://proton-native.js.org/
Electron Js Nedir?
Electron Js; HTML, CSS ve JavaScript kullanarak masaüstü uygulama geliştirmek isteyenler için JavaScript frameworküdür. Daha kolay uygulama geliştirmeyi sağlar.
Sonuç
Masaüstü uygulama geliştirmek için çok sayıda programlama dili ve aracı bulunmaktadır. Bunlardan bir tanesi olan Electron JS dayandığı temeller nedeni ile diğerlerinden ayrılır. Node JS ve Chromium temelli çalışan bu framework temel web teknolojinlerini kullanır bu nedenle web uygulamaları geliştirenlerin rahatlıkla kullanabilecekleri bir frameworktür.
HTML, CSS ve JavaScript kullannanların masaüstü uygulamaları geliştirmekleri için geliştirilmiştir. Eğer masaüstü uygulama geliştirmek istiyor ve web teknolojinlerine aşina iseniz tercih edebileceğiniz güzelbir frameworktür.
