Key takeaways
- Electron er en indpakning, der kører websteder som apps på din computer.
- Disse apps på tværs af platforme er nemmere og hurtigere at bygge.
- Apps er sjældent så polerede eller integrerede som officielt understøttede apps.
Webapps er over alt på internettet, og nu overtager de din computer.
"Electron" er et navn, der kan give selv de mest afslappede Mac-brugere rystelser. Det er en måde for udviklere at skrive deres app én gang og få den til at køre på Windows, Mac og i webbrowseren. Men det er fordi Electron-apps kører i en browser, en Chromium-baseret browser forklædt som en app. Og nu dropper Agile Bits, udvikleren af 1Password, sin officielle Mac-app til Electron. Det lyder ikke så slemt, så hvorfor er folk så vrede?
"Takket være Chromium-motoren, med Electron, gengives apps, som om de kører i en browser. Dette har dog en omkostning: højt CPU- og RAM-forbrug sammenlignet med [officielt understøttede] apps, " web -appudvikler Burak Özdemir fort alte Lifewire via e-mail.
Flere elektroner, flere problemer
Özdemir rammer lige på punktet. Det største problem med Electron, set fra et praktisk synspunkt, er, at det bruger din computers ressourcer. Den kører en webbrowser sammen med flere ekstra understøttende processer for hver Electron-app, du bruger.
Disse browsere spiser en absurd mængde af din computers arbejdshukommelse og beskatter også CPU'en. Kort sagt, din computer vil køre varmere og bruge mere strøm, og derved dræne dit batteri hurtigere.
Udviklere graver Electron, fordi det er mindre arbejde. Du skal kun skrive appen én gang, og den virker på alle platforme, der understøtter Electron.
Men det er du måske ligeglad med. Måske bruger du en stor, kraftfuld desktop, der altid er tilsluttet strøm, og du er ligeglad med at spilde elektricitet. Det bringer os til den anden og måske vigtigere grund til, at Mac-brugere ikke kan lide Electron.
Hver computerplatform har et udseende og en følelse. På Mac ser alle dialogbokse ens ud. Tastaturgenveje er ensartede på tværs af apps, ⌘-tasten viser en apps præferencevindue og så videre.
Electron-apps bryder denne konsistens, selvom de forsøger at lade være - de oversætter meddelelser og menuer til platformsrelevante versioner, men det overordnede design af apps følger sjældent platformskonventioner. Dette virker uundgåeligt, hvis du udvikler en app, der kører på både Windows og macOS - du kan ikke passe ind på begge platforme.
Værre, Electron-apps opfører sig ofte ikke som deres indbyggede modparter. Slack Mac-appen laver for eksempel alle slags underlige ting, når du trykker på piletasterne eller bruger standard systemtastaturgenveje til at navigere i din indtastede tekst. Og der er ikke noget standard præferencepanel – du får en webside i stedet for.
Hvorfor udviklere bruger det
Udviklere graver Electron, fordi det er mindre arbejde. Du skal kun skrive appen én gang, og den virker på alle platforme, der understøtter Electron. Det er en betydelig velsignelse, når du bygger en startup. I disse dage er nettet i sig selv ofte den primære platform med apps til Mac, Windows eller Linux på en fjern tredjeplads efter iPhone, iPad og Android.
"Mange udviklere vil bruge Electron til Mac-baserede apps, fordi rammen tillader en at kode appen én gang og implementere den på macOS," fort alte netværksingeniør Eric McGee til Lifewire via e-mail. "Denne ramme giver også en rig brugergrænseflade til desktop-apps, der er bygget på den."
Elektronudvikling er også let for folk, der allerede laver webapps. Den bruger nøjagtig den samme teknologi - HTML, CSS og JavaScript - så der er ingen grund til at lære et nyt sprog eller ansætte nye udviklere, der kender dem.
iPhone First
Så hvorfor bruges Electron ikke også på mobilen? Udviklere kunne måske lide det, og det ville være en opgave mindre at udføre, men Electron er bare ikke god nok.
"[Electron] bruger en stor mængde RAM og kræver en ekspansiv mængde lagerplads, hvilket gør det til et dårligt valg for iOS-apps, der skal være hurtige, lette og lægge minim alt pres på RAM," siger McGee.
Den anden grund er, at Apple ikke vil tillade det. Apple gør livet svært for udviklere at indsende Electron-apps til Mac App Store, men det er muligt, og det er også nemt bare at downloade appen og installere den direkte.
Det største problem med Electron, set fra et praktisk synspunkt, er, at det forbruger din computers ressourcer.
På iOS tillader Apple ikke, at nogen apps kører deres egen webgengivelsesmaskine. Det vil sige, at apps kun kan bruge WebKit, som er det, der driver Safari. Selv faktiske webbrowsere på iOS-Chrome, Firefox, Brave-all bruger WebKit i stedet for deres egen teknologi.
Det betyder, at du ikke kan køre Chromium-back-end, der kræves af Electron-apps, hvilket igen tvinger udviklerne til at udvikle ordentlige apps.
Electron kommer sandsynligvis ingen steder hen – ikke, mens internettet og mobilen fortsat er de primære platforme for tjenester og apps. Men det betyder ikke, at du skal kunne lide Electron-apps eller lade dem tømme dit batteri, mens du grimmer din computer. Måske hold dig til de officielt understøttede apps, hvor du kan.