Electron
2 minuty czytania
Electron to otwarty framework, który pozwala na tworzenie aplikacji dla różnych systemów operacyjnych z wykorzystaniem technologii webowych (HTML, CSS, JavaScript). Jego popularność wzrosła w ostatnich latach dzięki łatwości tworzenia aplikacji desktopowych przy użyciu jednego kodu.
Electron to platforma open source pozwalająca tworzyć aplikacje webowe z wykorzystaniem HTML, CSS i JavaScript. Został stworzony w 2013 roku przez inżyniera GitHub, Cheng Zhao, jako efekt połączenia frontendowego Chromium i backendowego w Node.js. Projekt początkowo nazywał się Atom Shell, ale już w roku po publikacji zmienił swoją nazwę na obecną.
Jak działa Electron?
Electron opiera się na silniku renderującym Chromium i środowisku Node.js, co pozwala na tworzenie aplikacji desktopowych, które zachowują się i wyglądają podobnie jak strony internetowe. Aplikacje tworzone w Electron działają na różnych platformach, takich jak Windows, macOS i Linux, co oznacza, że deweloperzy nie muszą pisać osobnej wersji aplikacji dla każdej platformy. Electron pozwala także na korzystanie z dodatkowych bibliotek i narzędzi, takich jak biblioteki Node.js i NPM, co ułatwia tworzenie rozbudowanych aplikacji desktopowych.
Electron — połączenie możliwości Node.js i Chromium
Electron to wieloplatformowe rozwiązanie, które pozwala tworzyć aplikacje, które składają się z wątku głównego działającego na serwerze, czyli na Node.js oraz wątków renderujących, funkcjonujących w Chromium udostępniającym minimalistyczny user interface oparty na oknach przeglądarki. Taka budowa umożliwia szybką i łatwą komunikację wątków, dzięki czemu platforma może wykonywać działania, których nie można wykonać na zwykłych aplikacjach webowych np. korzystanie z systemowych API, operacje na plikach, używanie prekompilowanych bibliotek. Electron posiada całe bogactwo gotowych modułów, za których pomocą można zbudować funkcjonalną aplikację, korzystając z kodu napisanego wcześniej przez kogoś innego. Nie tylko zapewnia separację wątków, ale i korzysta z narzędzi pomagający przy debugowaniu i analizującym wydajność witryny przy pomocy Chrome DevTools. Co więcej, ponieważ ta platforma działa w oparciu o Chromium, ma zapewniony dostęp do najnowszych standardów i wytycznych związanych z nowymi technologiami.
Wady korzystania z Electron i kiedy lepiej wybrać inną technologię
Przede wszystkim, aplikacje stworzone w Electron wymagają zwykle większych zasobów systemowych niż tradycyjne aplikacje desktopowe napisane w innych językach programowania. Ponadto, z powodu wykorzystania środowiska Node.js, aplikacje Electron mają nieco większe ryzyko podatności na ataki związane z bezpieczeństwem. Aplikacje Electron nie zawsze działają w pełni wydajnie i responsywnie, co może przyczynić się do niezadowolenia użytkowników. W zależności od wymagań projektu i oczekiwań użytkowników, może się okazać, że lepiej wykorzystać inną technologię do tworzenia aplikacji desktopowych.
Powiązane artykuły
Optymalizacja obrazów Dockera
24 lip 2023
Obrazy dla kontenerów Dockera mogą być naprawdę ciężkie. W internecie można znaleźć przykłady image'ów ważących nawet po 5 lub więcej gigabajtów. Jest to problem, zarówno dla developerów, używających Dockera do lokalnego developmentu, jak i dla osób odpowiedzialnych za setup aplikacji w środowiskach testowych i produkcyjnych. W artykule zostanie poruszony temat zmniejszania rozmiaru obrazów Dockera.

Pillar Page - Sekrety efektywnej organizacji treści na Twojej stronie internetowej
25 wrz 2023
Wyobraź sobie dom, w którym wszystko jest pięknie posortowane w jednym miejscu. Takim 'domem' dla Twojej strony internetowej może być Pillar Page - dedykowana strona, na której skupia się wszystko, co wartościowe dla Twoich odbiorców. Pozwoli Ci to z łatwością zarządzać i organizować treść na stronie.
Rozszerzanie możliwości Big Data z Apache Samza
25 wrz 2023
Big Data, czyli duże zbiory danych, nieustannie zyskują na znaczeniu w świecie IT. Nowe możliwości analizy i przetwarzania tychże daje Apache Samza - otwarte oprogramowanie stworzone przez Apache Software Foundation. Wspierającym nas procesor strumieniowy o wysokim przepustowości, Samza pomaga rozwijać potęgę Big Data. W tym artykule zajmiemy się szczegółami i możliwościami wynikającymi z korzystania z Apache Samza.
InVision Studio - niezbędne narzędzie dla każdego projektanta UI/UX
25 wrz 2023
InVision Studio to narzędzie, którego każdy projektant UI/UX powinien mieć w swoim arsenale. Pomaga w tworzeniu responsywnych interfejsów, prototypów i animacji, umożliwiając szybką i efektywną pracę. Doceniany za innowacyjność, łatwość obsługi oraz szeroki zakres funkcji, InVision Studio silnie zaznacza swoją obecność w świecie projektowania UI/UX.
Efektywne prowadzenie webinarów w sektorze IT
25 wrz 2023
W dobie cyfryzacji, webinar staje się jednym z najważniejszych narzędzi w sektorze IT. Powodzenie webinaru zależy od wielu czynników, począwszy od przygotowania, a skończywszy na umiejętności utrzymania zaangażowania uczestników. Zatem cyfrowym szlakiem: poradnik efektywnego prowadzenia, to przewodnik, który pomoże przetrwać w cyfrowym świecie webinarów IT. Dowiedz się więcej, jak skutecznie zorganizować i przeprowadzić webinar, a swoje zdobycze wiedzy zastosować w praktyce.
MyISAM - mechanizm składowania danych w MySQL
25 wrz 2023
MyISAM, zasłużony odpowiednik MySQL dla architektury składowania danych, to prawdziwy klejnot w jego koronie. Zapewniając szybką indeksację i wysoki poziom skompresowanych danych, MyISAM umożliwia efektywne zarządzanie dużymi ilościami informacji. Weźmy zestaw narzędzi, aby zgłębić tajemnice tego mechanizmu składowania danych.
Zobacz wszystkie artykuły