
Electron a Chromium Embedded Framework (CEF) jsou dvě zavedené technologie pro začlenění Chromia do desktopových aplikací. Obě umožňují vývojářům vytvářet software, který zobrazuje moderní weby a webová rozhraní v systémech macOS, Windows a Linux. Slouží však k zásadně odlišným účelům.
Electron je kompletní framework pro desktopové aplikace, který kombinuje Chromium, Node.js a nativní API operačního systému. Vývojáři mohou vytvářet celé aplikace pomocí JavaScriptu, TypeScriptu, HTML a CSS, aniž by potřebovali rozsáhlé zkušenosti s nativním programováním. CEF je naproti tomu framework pro vkládání Chromia do existujících nebo nových aplikací, obvykle napsaných v C++ nebo jiných nativních jazycích.
Obě technologie se široce používají v produkčním softwaru. Na Electronu běží aplikace jako Visual Studio Code, Slack, Discord a Notion, zatímco CEF se používá v produktech jako Spotify, Steam a OBS Studio. Ve WebCatalogu jsme si pro vývoj našich multiplatformních desktopových aplikací vybrali Electron.
Jaké jsou tedy rozdíly a kdy dává smysl použít jednu technologii místo druhé?
Electron vs. CEF v kostce
Přestože Electron i CEF používají Chromium, výrazně se liší svou architekturou, zkušeností vývojářů při práci s nimi a zamýšleným využitím.
| Vlastnost | Electron | Chromium Embedded Framework (CEF) |
|---|---|---|
| První uvedení | 2013 | 2008 |
| Hlavní účel | Tvorba kompletních desktopových aplikací | Vkládání Chromia do jiných aplikací |
| Jádro prohlížeče | Chromium | Chromium |
| Hlavní jazyky | JavaScript, TypeScript | C, C++, s vazbami pro další jazyky od třetích stran |
| Obsahuje Node.js | Ano | Ne |
| Nativní integrace | API Electronu a nativní moduly Node.js | Přímá integrace s nativním kódem |
| Struktura aplikace | Hlavní proces a vykreslovací procesy | Hostitelská aplikace s podprocesy Chromia |
| Vykreslování mimo obrazovku | Možné pomocí vlastních řešení | Vestavěná podpora v API |
| Velikost aplikace | Obecně velká | Závisí na integraci, samotné Chromium je však objemné |
| Výkon | Závisí na aplikaci | Závisí na aplikaci a integraci |
| Podpora platforem | macOS, Windows, Linux | macOS, Windows, Linux |
| Ekosystém pro vytváření distribučních balíčků | Electron Forge, electron-builder | Obvykle řešeno hostitelskou aplikací |
| Nejvhodnější pro | Desktopové aplikace založené na JavaScriptu | Nativní aplikace vyžadující vložený webový obsah |
Nejdůležitější rozdíl spočívá v tom, že Electron poskytuje aplikační framework, zatímco CEF poskytuje framework pro vkládání prohlížeče. Nemusí tedy být přímými alternativami, protože pracují na různých úrovních abstrakce.
Architektura: kompletní framework vs. vložený prohlížeč
Electron spojuje Chromium a Node.js do jednotného běhového prostředí aplikace. Vývojáři vytvářejí hlavní proces, který spravuje okna aplikace, události jejího životního cyklu a nativní funkce, zatímco vykreslovací procesy obsluhují webové rozhraní.
Tato architektura umožňuje vývojářům psát většinu aplikace pomocí známých nástrojů pro JavaScript a TypeScript. Electron poskytuje API pro vytváření oken, správu relací prohlížeče, obsluhu nabídek, zobrazování oznámení, přístup k systémovým dialogům a integraci s operačním systémem.
CEF volí jiný přístup. Místo kompletního frameworku pro desktopové aplikace umožňuje vývojářům integrovat Chromium do aplikace, kterou si sami vytvářejí a řídí.
Například vývojář vytvářející nativní aplikaci v C++ může pomocí CEF zobrazit webový obsah v existujícím okně aplikace. Okolní rozhraní, životní cyklus aplikace, služby na pozadí a další nativní funkce zůstávají pod jeho kontrolou.
CEF poskytuje API pro správu instancí prohlížeče, navigaci, načítání zdrojů, spouštění JavaScriptu a komunikaci mezi prohlížečem a nativní aplikací. Využívá také víceprocesovou architekturu Chromia s oddělenými procesy pro vykreslování a další funkce prohlížeče.
Tento rozdíl ovlivňuje způsob, jakým vývojáři své aplikace strukturují. U Electronu je aplikace zpravidla postavena kolem Chromia a Node.js. U CEF je Chromium obvykle jednou ze součástí větší aplikace.
CEF lze použít také k vytváření aplikací, jejichž rozhraní je převážně webové, ale vývojáři musí sami implementovat větší část související aplikační infrastruktury.
Zajímavým historickým detailem je, že rané verze Electronu a NW.js používaly CEF. Electron nakonec přešel k přímější integraci s Chromiem, protože abstrakce CEF ztěžovala implementaci některých funkcí, zejména hluboké integrace s Node.js.
Pro vývojáře, kteří chtějí kompletní framework pro tvorbu desktopových aplikací pomocí webových technologií, je Electron obvykle přímočařejším výchozím bodem. Pro vývojáře, kteří již mají nativní aplikaci a chtějí do ní přidat webové funkce, může být přirozenější volbou CEF.
Vývojářská zkušenost: JavaScript vs. nativní vývoj
Jednou z největších výhod Electronu je snadnost osvojení. Vývojáři obeznámení s moderním webovým vývojem mohou při tvorbě desktopových aplikací využít své stávající dovednosti, aniž by se museli učit C++ nebo frameworky uživatelského rozhraní specifické pro jednotlivé platformy.
Integrace Electronu s Node.js poskytuje přístup k rozsáhlému ekosystému balíčků pro operace se souborovým systémem, síťovou komunikaci, databáze, procesy na pozadí a další funkce. Oblíbené frontendové technologie, jako jsou React, Vue, Svelte a Angular, lze používat bez významných změn architektury.
CEF je navržen především kolem API pro C a C++. Přestože existují vazby od třetích stran pro jazyky jako C#, Java, Python a Delphi, vývojáři stále potřebují rozumět architektuře nativní aplikace a požadavkům CEF na procesy, vlákna a životní cyklus.
Pro tým, který již spravuje nativní aplikaci, to může být spíše výhoda než nevýhoda. CEF umožňuje vývojářům zavést moderní webové rozhraní bez přepisování existujícího nativního kódu nebo přechodu na zcela nový aplikační framework.
Pro tým zaměřený na JavaScript, který začíná vyvíjet novou desktopovou aplikaci, však CEF obvykle vyžaduje více práce s počátečním nastavením a nativní integrací.
Rozdíl se týká i nástrojů. Electron těží ze zavedených nástrojů, jako jsou Electron Forge a electron-builder, které zjednodušují vytváření distribučních balíčků, podepisování kódu, distribuci aplikací a aktualizace. CEF poskytuje binární distribuce a příklady, ale za integraci frameworku do vlastních systémů sestavování a nasazování obvykle odpovídají vývojáři.
To neznamená, že by CEF byl méně schopný. Pouze to odráží jeho účel: jde o vložitelnou komponentu, nikoli o kompletní platformu pro vývoj aplikací.
Výkon, využití paměti a velikost aplikace
Protože Electron i CEF používají Chromium, ani jedna technologie automaticky neodstraňuje režii spojenou s provozem moderního jádra prohlížeče.
Obě technologie mohou používat více procesů pro vykreslování, akceleraci GPU, síťovou komunikaci a další funkce prohlížeče. Spotřeba paměti a využití CPU výrazně závisejí na zobrazovaném obsahu, počtu aktivních instancí prohlížeče a způsobu, jakým aplikace spravuje své prostředky.
CEF může nabídnout větší flexibilitu při integraci do existující nativní aplikace. Vývojáři mohou Chromium používat pouze pro části rozhraní, které vyžadují webové technologie, a ostatní funkce implementovat přímo v nativním kódu.
Například grafická aplikace může používat CEF pro panel nastavení nebo vložené webové rozhraní, zatímco její vykreslovací jádro, zpracování dokumentů a další funkce citlivé na výkon zůstanou nativní.
Aplikace v Electronu mohou také spouštět nativní kód prostřednictvím doplňků Node.js, externích procesů nebo nativních modulů. Architektura Electronu je však obecně zaměřena na vytváření samotné aplikace pomocí webových technologií.
Obzvlášť užitečnou funkcí CEF je vykreslování mimo obrazovku. Namísto zobrazování webového obsahu v tradičním okně prohlížeče může CEF vykreslovat obsah do vyrovnávacích pamětí, které hostitelská aplikace sama zpracuje a zobrazí. To je užitečné například pro herní enginy, streamovací software a nástroje s vlastními vykreslovacími systémy.
Electron může podporovat specializované postupy vykreslování pomocí dodatečných integrací, ale CEF nabízí vykreslování mimo obrazovku jako zavedenou součást svého API pro vkládání prohlížeče.
Pro vývojáře, kteří vyhodnocují výkon, patří mezi nejužitečnější měření:
- Doba spuštění: Jak rychle je aplikace připravena k použití.
- Využití paměti: Spotřeba prostředků při použití reprezentativního obsahu prohlížeče a nativních funkcí.
- Využití CPU: Výkon při vykreslování, navigaci a operacích na pozadí.
- Velikost aplikace: Velikost stahovaného balíčku a využití disku po instalaci.
- Požadavky na vykreslování: Zda aplikace potřebuje běžná okna, nebo vlastní vykreslování mimo obrazovku.
Je také důležité odlišovat CEF od frameworků využívajících systémové webview. CEF obsahuje Chromium, místo aby spoléhal na jádro prohlížeče nainstalované operačním systémem. Přechod z Electronu na CEF proto automaticky nevede k výrazně menší aplikaci.
Vývojáři, kterým záleží především na menších distribučních balíčcích aplikací, mohou zvážit alternativy, jako je Tauri, které používá systémová webview.
Bez srovnávacího měření skutečné implementace nelze ani Electron, ani CEF označit za jednoznačně rychlejší.
Zabezpečení a aktualizace prohlížeče
Electron i CEF se spoléhají na architekturu prohlížeče Chromium a jeho bezpečnostní mechanismy, ale za správnou konfiguraci aplikací odpovídají vývojáři.
Electron poskytuje funkce jako sandboxování vykreslovacích procesů, izolaci kontextu a komunikaci založenou na IPC mezi privilegovanými funkcemi aplikace a webovým obsahem. Jeho bezpečnostní dokumentace doporučuje omezovat přístup k Node.js, pečlivě ověřovat zprávy IPC a zacházet se vzdáleně načítaným obsahem jako s nedůvěryhodným.
CEF také podporuje víceprocesovou architekturu Chromia a bezpečnostní izolaci. Protože je však CEF integrován do aplikace řízené jejím vývojářem, hostitelská aplikace odpovídá za rozhodnutí, které funkce prohlížeče, oprávnění a nativní možnosti zpřístupní.
CEF podporuje vazby na JavaScript a nativní komunikaci, což vývojářům umožňuje propojit webový obsah s funkcemi aplikace. Tato rozhraní je nutné navrhovat pečlivě, zejména při zobrazování webů třetích stran.
| Bezpečnostní hledisko | Electron | CEF |
|---|---|---|
| Sandboxování Chromia | Podporováno | Podporováno |
| Privilegovaný nativní přístup | Node.js a API Electronu | Nativní API hostitelské aplikace |
| Komunikace mezi JavaScriptem a nativním kódem | Skripty preload a IPC | Vazby V8 a zasílání zpráv mezi procesy |
| Izolace vzdáleného obsahu | Sandboxování vykreslovacích procesů a izolace kontextu | Izolace procesů Chromia a řízení ze strany hostitelské aplikace |
| Bezpečnostní aktualizace prohlížeče | Aktualizace verze Electronu | Aktualizace verze CEF |
| Odpovědnost za zabezpečení aplikace | Vývojář aplikace | Vývojář aplikace |
Dalším důležitým hlediskem je údržba prohlížeče. Electron i CEF obvykle distribuují vlastní běhové prostředí Chromia, takže vývojáři musí vydávat aktualizace aplikace, jakmile jsou dostupné bezpečnostní opravy.
CEF poskytuje větve vydání navazující na Chromium a binární distribuce, které tento proces zjednodušují. Electron obdobně udržuje vydání zahrnující aktualizace Chromia a Node.js.
Ani jeden přístup zcela neodstraňuje potřebu průběžné údržby. Aplikace používající starší verze Chromia mohou zůstat vystavené zranitelnostem, které již byly opraveny v původním projektu.
Týmy vyvíjející software, který zobrazuje libovolné webové stránky, by měly bezpečnostní údržbu považovat za nezbytnou součást životního cyklu aplikace, nikoli za příležitostný úkol.
Rozšíření: významné aplikace používající Electron a CEF
Electron i CEF jsou ve značné míře využívány v produkčním prostředí, ale způsoby jejich použití se liší.
Electron je obzvlášť viditelný mezi běžnými desktopovými aplikacemi pro produktivitu, komunikaci a vývoj. Microsoft používá Electron pro Visual Studio Code a mezi další známé produkty založené na Electronu patří Slack, Discord, Notion, Figma, Signal Desktop a GitHub Desktop.
CEF používají také významné softwarové společnosti, zejména při integraci webových rozhraní do aplikací s existující nativní architekturou.
Mezi příklady patří:
| Aplikace | Technologie | Typické použití |
|---|---|---|
| Visual Studio Code | Electron | Multiplatformní editor kódu |
| Slack | Electron | Týmová komunikace |
| Discord | Electron | Komunikační a komunitní platforma |
| Notion | Electron | Poznámky a produktivita |
| Figma Desktop | Electron | Aplikace pro návrh designu |
| Spotify Desktop | CEF | Rozhraní založené na webových technologiích v desktopovém klientu |
| Steam | CEF | Vložená webová rozhraní v desktopovém klientu |
| OBS Studio | CEF | Zdroje prohlížeče, překryvné vrstvy a dokované panely prohlížeče |
Spotify je obzvlášť dobře zdokumentovaným příkladem využití CEF. Na své oficiální stránce věnované open source zveřejňuje verze CEF a Chromia spojené s jednotlivými vydáními Spotify Desktop.
OBS Studio je dalším jasným příkladem toho, proč si vývojáři vybírají CEF. Jeho integrace obs-browser používá CEF k poskytování zdrojů prohlížeče, které uživatelům umožňují zobrazovat webové překryvné vrstvy a další obsah ve streamovacích scénách. CEF je součástí OBS Studio, nikoli frameworkem použitým k vytvoření celé aplikace.
Steam rovněž používá ve svém desktopovém klientu vložené webové komponenty založené na Chromiu a propojuje webová rozhraní se svou širší nativní aplikační infrastrukturou.
Tyto příklady ilustrují rozdíl mezi oběma technologiemi. Electron se často používá k vytvoření celé desktopové aplikace, zatímco CEF se často používá k doplnění webových funkcí do aplikací, které již mají rozsáhlé nativní součásti.
CEF by neměl být vnímán jako okrajová nebo zastaralá alternativa. Vznikl v roce 2008, tedy před Electronem, a mnoho let se hojně používá v komerčním softwaru. Jeho dlouhá historie a pokračující využití ve významných produktech dokazují, že vkládání Chromia zůstává důležitým přístupem k vývoji desktopových aplikací.
Electron si mezitím vybudoval obzvlášť silný ekosystém kolem desktopových aplikací založených na JavaScriptu. Díky širokému rozšíření, zavedeným nástrojům a zapojení významných technologických společností je atraktivní pro týmy, které vytvářejí nové produkty pomocí webových technologií.
Oba frameworky mají různé silné stránky, protože se zaměřují na odlišné architektonické požadavky.
Proč ve WebCatalogu volíme Electron
Ve WebCatalogu jsme si pro naše multiplatformní desktopové aplikace vybrali Electron, protože velmi dobře odpovídá požadavkům našich produktů.
WebCatalog umožňuje uživatelům proměňovat webové stránky v desktopové aplikace, nezávisle spravovat více účtů a organizovat aplikace v systémech macOS, Windows a Linux. Náš software musí podporovat weby vytvořené tisíci různých vývojářů, s různými autentizačními systémy, mechanismy ukládání dat, API prohlížeče a JavaScriptovými frameworky.
Electron i CEF poskytují jednotné běhové prostředí Chromia, což je důležité pro kompatibilitu. Na rozdíl od frameworků založených na systémových webview nám umožňují používat známou verzi Chromia napříč podporovanými desktopovými platformami.
WebCatalog však není primárně nativní aplikací, která potřebuje vloženou komponentu prohlížeče. Funkce prohlížeče tvoří jádro našeho produktu. Potřebujeme rozsáhlou kontrolu nad okny, relacemi, úložištěm, oprávněními, navigací a chováním aplikace v průběhu jejího životního cyklu.
Electron pro tyto požadavky poskytuje vyspělá API. Jeho rozhraní BrowserWindow, webContents a session nám umožňují vytvářet funkce podobné prohlížeči pomocí JavaScriptu a TypeScriptu. Obzvlášť důležité jsou perzistentní oddíly relací, protože uživatelům umožňují udržovat nezávislé přihlašovací relace pro více účtů na stejném webu.
CEF také poskytuje API pro správu instancí prohlížeče, požadavků, úložiště a nativní integrace. V zásadě by bylo možné řadu stejných funkcí implementovat pomocí CEF. Museli bychom však sami vytvářet a udržovat více nativní infrastruktury.
Integrace Electronu s Node.js také odpovídá našemu technologickému stacku. Velkou část logiky desktopových aplikací můžeme implementovat v TypeScriptu, sdílet kód mezi produkty a využívat ekosystém JavaScriptu.
Dalším hlediskem je multiplatformní vývoj. WebCatalog podporuje macOS, Windows a Linux včetně vytváření balíčků aplikací, integrací a systémového chování specifických pro jednotlivé platformy. Zavedená API a distribuční nástroje Electronu snižují množství nativního kódu, který musíme udržovat.
Uvědomujeme si, že Electron přináší režii. Přibalení Chromia zvětšuje velikost aplikace a aplikace založené na prohlížeči vyžadují pečlivou správu prostředků. Místo nahrazení Electronu jsme se zaměřili na zlepšování způsobu, jakým jej používáme.
Například jsme zavedli klony APFS pro snížení využití disku generovanými aplikacemi pro Mac, čímž jsme omezili duplicitně uložená data, aniž bychom se vzdali kompatibility Chromia.
Naše rozhodnutí neznamená, že je Electron univerzálně lepší než CEF. Pokud by WebCatalog byl primárně nativní aplikací s několika vloženými webovými rozhraními, mohl by být CEF vynikající volbou. Protože je ale náš produkt zásadně postaven na webových aplikacích a funkcích prohlížeče, poskytuje Electron produktivnější a snáze udržovatelný základ.
Kde má CEF výhodu
Přestože ve WebCatalogu dáváme přednost Electronu, CEF má důležité výhody pro aplikace, které vyžadují hlubší integraci s nativním softwarem.
CEF je obzvlášť atraktivní, pokud vývojáři již mají zavedenou aplikaci v C++ a chtějí přidat moderní webová rozhraní bez nahrazení stávající architektury.
Další významnou výhodou je podpora vykreslování mimo obrazovku. Aplikace, jako je streamovací software nebo herní enginy, mohou potřebovat vykreslovat webový obsah přímo do vlastních grafických řetězců namísto běžných desktopových oken. CEF pro tyto případy použití poskytuje zavedená API.
CEF také dává vývojářům značnou kontrolu nad integrací prohlížeče. Mohou přizpůsobovat zpracování požadavků, navigaci, vazby na JavaScript, načítání zdrojů i způsob, jakým instance prohlížeče komunikují s nativními součástmi aplikace.
Pro týmy se silnými zkušenostmi s nativním vývojem může tato flexibilita převážit nad pohodlím Electronu.
CEF stojí za zvážení při:
- Přidávání webových rozhraní do existující nativní aplikace. Vývojáři mohou zachovat současnou architekturu aplikace a vložit Chromium tam, kde je potřeba.
- Tvorbě softwaru s vlastními požadavky na vykreslování. Vykreslování mimo obrazovku umožňuje integrovat webový obsah do grafických řetězců a specializovaných rozhraní.
- Hluboké integraci s nativními funkcemi v C++. CEF zpřístupňuje nativní API a umožňuje podrobnou kontrolu nad chováním prohlížeče.
- Údržbě zavedené aplikace založené na CEF. Migrace na Electron může přinést zásadní změny architektury bez významných přínosů.
- Kombinování nativních a webových rozhraní. Vývojáři mohou používat Chromium pro vybrané části aplikace a jinde zachovat nativní komponenty uživatelského rozhraní.
CEF však vyžaduje větší odpovědnost za aplikační infrastrukturu. Vývojáři mohou potřebovat implementovat vlastní vytváření distribučních balíčků, aktualizace, správu oken a integrace specifické pro jednotlivé platformy.
Pro týmy, které jsou již připravené udržovat nativní aplikace, to může být zcela rozumné. Pro týmy zaměřené na web, které vytvářejí nový desktopový produkt, to může přinést zbytečnou složitost.
Electron vs. CEF: co si vybrat?
Obě technologie jsou vyspělé, aktivně vyvíjené a schopné sloužit jako základ pokročilého desktopového softwaru. Lepší volba závisí především na tom, zda vytváříte novou desktopovou aplikaci postavenou na webových technologiích, nebo vkládáte webové funkce do existující nativní aplikace.
| Vaše priorita | Lepší výchozí bod | Proč |
|---|---|---|
| Nová desktopová aplikace využívající JavaScript nebo TypeScript | Electron | Kompletní aplikační framework |
| Existující nativní aplikace v C++ | CEF | Integruje se do nativní architektury |
| Minimum nativního vývoje | Electron | Node.js a JavaScriptová API |
| Vkládání webového obsahu do nativních oken | CEF | Navržen přímo pro vkládání |
| Vykreslování mimo obrazovku a vlastní grafické řetězce | CEF | Specializovaná API pro vykreslování |
| Rozsáhlé nástroje pro vytváření balíčků a aktualizace desktopových aplikací | Electron | Zavedený distribuční ekosystém |
| Přímá integrace s nativním kódem v C++ | CEF | Nativní rozhraní pro C a C++ |
| Jednotné Chromium napříč desktopovými platformami | Obě možnosti | Obě technologie obsahují Chromium |
| Komplexní správa relací prohlížeče | Obě možnosti | Obě poskytují možnosti správy prohlížeče |
| Malé distribuční balíčky aplikací | Ani jedna možnost nemá vrozenou výhodu | Obě distribuují Chromium |
| Existující vývojářský tým zaměřený na JavaScript | Electron | Známý vývojový stack |
| Existující produkt založený na CEF | CEF | Vyhnete se zbytečné migraci |
Pro většinu webových vývojářů, kteří začínají vytvářet novou multiplatformní desktopovou aplikaci, je Electron obecně praktičtější volbou. Poskytuje aplikační architekturu, nativní integrace, vývojářské nástroje a distribuční ekosystém potřebné k vytvoření kompletního produktu, aniž by bylo nutné vyvíjet vše od nuly.
CEF je často lepší volbou pro vývojáře, kteří již mají nativní aplikaci nebo potřebují specializované možnosti vkládání prohlížeče. Díky flexibilitě a přímé nativní integraci je obzvlášť užitečný pro software, jako jsou herní enginy, streamovací nástroje, průmyslové aplikace a složité nativní produkty s vloženými webovými rozhraními.
Ani jedna technologie není ze své podstaty rychlejší nebo bezpečnější. Tyto vlastnosti výrazně závisejí na aplikaci, její architektuře a kvalitě implementace.
Závěrečné myšlenky
Electron a Chromium Embedded Framework sdílejí stejnou základní technologii prohlížeče, ale řeší odlišné problémy.
Electron je navržen tak, aby zpřístupnil vývoj desktopových aplikací webovým vývojářům. Spojuje Chromium, Node.js a nativní desktopová API do frameworku, který týmům umožňuje vytvářet pokročilé aplikace pomocí JavaScriptu a TypeScriptu.
CEF je navržen pro vkládání Chromia do jiných aplikací. Poskytuje kontrolu nad integrací prohlížeče na nižší úrovni a je obzvlášť přínosný pro nativní aplikace, které potřebují webová rozhraní nebo specializované možnosti vykreslování.
Obě technologie prokázaly svou hodnotu ve významném produkčním softwaru. Na Electronu běží aplikace jako Visual Studio Code, Slack, Discord a Notion, zatímco CEF se používá v produktech jako Spotify, Steam a OBS Studio.
Ve WebCatalogu jsme si vybrali Electron, protože naše produkty jsou zásadně postavené na funkcích prohlížeče. Jeho jednotné běhové prostředí Chromia, vyspělá API pro správu prohlížeče a ekosystém JavaScriptu nám umožňují efektivně vyvíjet a udržovat multiplatformní desktopové aplikace.
CEF zůstává vynikající volbou pro vývojáře pracující s nativními aplikacemi, zejména pokud je potřeba vložit Chromium do existující architektury, nikoli na něm postavit celý produkt.
Rozhodnutí nakonec závisí na tom, co vytváříte. Pokud chcete vytvořit kompletní desktopovou aplikaci pomocí webových technologií, je Electron obvykle lepším výchozím bodem. Pokud chcete přidat Chromium do nativní aplikace, bude pravděpodobně vhodnějším nástrojem CEF.


