Key takeaways
- Electron är ett omslag som kör webbplatser som appar på din dator.
- Dessa plattformsoberoende appar är enklare och snabbare att bygga.
- Apparna är sällan så polerade eller integrerade som officiellt stödda appar.
Webbappar finns över hela internet och nu tar de över din dator.
"Electron" är ett namn som kan ge även de mest avslappnade Mac-användarna jitter. Det är ett sätt för utvecklare att skriva sin app en gång och få den att köras på Windows, Mac och i webbläsaren. Men det beror på att Electron-appar körs i en webbläsare, en Chromium-baserad webbläsare förklädd som en app. Och nu lämnar Agile Bits, utvecklaren av 1Password, sin officiella Mac-app för Electron. Det låter inte så illa, så varför är folk så arga?
"Tack vare Chromium-motorn, med Electron, renderas appar som om de körs i en webbläsare. Detta har dock en kostnad: hög CPU- och RAM-användning jämfört med [officiellt stödda] appar, " web -apputvecklaren Burak Özdemir berättade för Lifewire via e-post.
Fler elektroner, fler problem
Özdemir träffar rätt på punkten. Det största problemet med Electron, ur praktisk synvinkel, är att det förbrukar din dators resurser. Den kör en webbläsare, tillsammans med flera extra stödprocesser, för varje Electron-app du använder.
Dessa webbläsare äter en absurd mängd av din dators arbetsminne och beskattar även CPU:n. Kort sagt, din dator kommer att bli varmare och använda mer ström, vilket tar ur batteriet snabbare.
Utvecklare gräver Electron eftersom det är mindre arbete. Du behöver bara skriva appen en gång och den fungerar på alla plattformar som stöder Electron.
Men det kanske du inte bryr dig om. Kanske använder du en stor, kraftfull dator som alltid är ansluten till strömmen, och du bryr dig inte om att slösa med el. Det för oss till den andra och kanske viktigare anledningen till att Mac-användare inte gillar Electron.
Varje datorplattform har ett utseende och en känsla. På Mac ser alla dialogrutor likadana ut. Kortkommandon är konsekventa i alla appar, ⌘-tangenten visar en apps inställningar och så vidare.
Electron-appar bryter denna konsistens, även om de försöker att inte göra det – de översätter meddelanden och menyer till plattformsrelevanta versioner, men apparnas övergripande design följer sällan plattformskonventioner. Detta verkar oundvikligt om du utvecklar en app som körs på både Windows och macOS - du kan inte passa in på båda plattformarna.
Värre, Electron-appar beter sig ofta inte som sina inbyggda motsvarigheter. Slack Mac-appen, till exempel, gör alla typer av konstiga saker när du trycker på piltangenterna, eller använder vanliga systemtangentbordsgenvägar för att navigera i din inskrivna text. Och det finns ingen standardpanel med inställningar – du får en webbsida istället.
Varför utvecklare använder det
Utvecklare gräver Electron eftersom det är mindre arbete. Du behöver bara skriva appen en gång, och den fungerar på alla plattformar som stöder Electron. Det är en betydande välsignelse när du bygger en startup. Nuförtiden är själva webben ofta den primära plattformen, med appar för Mac, Windows eller Linux på en avlägsen tredje plats efter iPhone, iPad och Android.
"Många utvecklare kommer att använda Electron för Mac-baserade appar eftersom ramverket tillåter en att koda appen en gång och distribuera den på macOS", sa nätverksingenjören Eric McGee till Lifewire via e-post. "Det här ramverket tillhandahåller också ett rikt användargränssnitt för skrivbordsapparna som byggts på det."
Elektronutveckling är också lätt för folk som redan gör webbappar. Den använder exakt samma teknik – HTML, CSS och JavaScript – så det finns ingen anledning att lära sig ett nytt språk eller anställa nya utvecklare som kan dem.
iPhone First
Så varför används inte Electron på mobil också? Utvecklare kanske gillar det, och det skulle vara ett jobb mindre att göra, men Electron är helt enkelt inte tillräckligt bra.
"[Electron] förbrukar en stor mängd RAM och kräver en expansiv mängd lagringsutrymme, vilket gör det till ett dåligt val för iOS-appar som måste vara snabba, lätta och lägga minim alt tryck på RAM", säger McGee.
Den andra anledningen är att Apple inte tillåter det. Apple gör livet svårt för utvecklare att skicka in Electron-appar till Mac App Store, men det är möjligt, och det är också enkelt att bara ladda ner appen och installera den direkt.
Det största problemet med Electron, ur praktisk synvinkel, är att det förbrukar din dators resurser.
På iOS tillåter inte Apple att några appar kör sin egen webbrenderingsmotor. Det vill säga appar kan bara använda WebKit, vilket är det som driver Safari. Även faktiska webbläsare på iOS-Chrome, Firefox, Brave-all använder WebKit istället för sin egen teknik.
Det betyder att du inte kan köra Chromium-backend som krävs av Electron-appar, vilket i sin tur tvingar utvecklarna att utveckla ordentliga appar.
Electron kommer förmodligen inte någonstans – inte medan webben och mobilen förblir de primära plattformarna för tjänster och appar. Men det betyder inte att du måste gilla Electron-appar, eller låta dem trampa ner ditt batteri medan du fular upp din dator. Kanske håll dig till de officiellt stödda apparna där du kan.