Chrome overtog ikke kun internettet - det overtog også native apps. Mange af de applikationer, du kører på Windows, Mac og endda Linux, består af forældede stykker af Krom , den motor, der danner grundlaget for Google Chrome.
Hvilke apps er bygget af Chrom?
Der er flere måder for en udvikler at konstruere en applikation ved hjælp af Chromium-browsermotoren. Elektron er den mest kendte , men mange andre applikationer bruger noget kaldet CEF, Chromium Embedded Framework.
Chatter online? Slack er en populær applikation bygget med Electron. Tager noter? Evernote bruger CEF, og Trello bruger Electron. Spiller musik? Ja, du gættede det - Spotify bruger CEF, og det samme gør Amazon Music.
Du tror måske, at Microsoft ville vige væk fra Chromium, fordi det trods alt skabte Windows. Du tager fejl. GitHub Desktop, Microsoft Teams, Skype, Visual Studio Code og Yammer er alle Electron-apps. Selv den nye Xbox-app til Windows 10 er bygget med Electron, snarere end Microsofts egen UWP (Universal Windows Platform).
PC-spil holder sig for det meste med indfødte apps, men deres launchers og tilhørende chatværktøjer gør det bestemt ikke. Discord og Twitch.tv bruger Electron. Battle.net, Desura, Epic Games Launcher, GOG Galaxy, Uplay og endda Steam bruger alle CEF. EAs Origin-klient bruger Qt WebEngine , som også integrerer Chromium-kode.
Du kan få en idé om, hvor mange applikationer der bruger Chrom, ved at skimme gennem de meget ufuldstændige lister over Elektron og CEF-apps på Wikipedia. Backup apps, som CrashPlan, er inkluderet der, samt adgangskodeadministratorer som Bitwarden og hjælpeprogrammer som Adobe Creative Cloud.
RELATEREDE: Hvad er elektronapps, og hvorfor er de blevet så almindelige?
Det er som en webapp (men bruger mere RAM og lagerplads)
Hver elektron- eller CEF-baseret applikation indeholder en separat kopi af dele af Chrom. Mens applikationer, der bruger Electron og CEF, ligner webapps i din webbrowser, er de mindre effektive og bruger mere hukommelse på dit system.
Når du åbner Gmail i en Chrome-fane og Facebook i en anden, skal dit operativsystem kun køre en kopi af Chrome. Men når du kører to forskellige elektron- eller CEF-applikationer, har dit operativsystem brug for en separat kopi af elektron eller CEF til hver.
Det er ikke ualmindeligt at se en elektronbaseret applikation, især forbruge en overraskende mængde RAM. Igen, fordi hver af disse applikationer indeholder separate Chromium-filer, bruger de ekstra plads på dit system.
Hvorfor er de forældede, og er det et problem?
Electrons sikkerhedsdokumentation forklarer, hvorfor den baserer sin kode på forældede versioner af Chromium:
”Mens Electron stræber efter at understøtte nye versioner af Chromium så hurtigt som muligt, skal udviklere være opmærksomme på, at opgradering er en seriøs opgave - der involverer håndredigering af snesevis eller endda hundreder af filer. I betragtning af de ressourcer og bidrag, der er tilgængelige i dag, vil Electron ofte ikke være på den allerbedste version af Chromium og halter bagefter med flere uger eller et par måneder.
Selv efter at Electron-projektet opretter den nye version, skal udviklere, der bygger Electron-applikationer, tage den kode, integrere den i deres Electron-applikationer og sende en opdatering.
Dette er dog ikke så skræmmende som det lyder. Electrons dokumentation råder udviklere til at undgå at vise ikke-betroet kode og primært afhænge af lokale ressourcer eller pålideligt, sikkert fjernindhold. Derfor ser mange elektronapplikationer ikke ud til at være webbrowsere. For eksempel bruger Slack webteknologier til at levere en chatgrænseflade, men du går til din webbrowser, så snart du klikker på et link.
Hvorfor bruger udviklere Chrom?
Udviklere kan lide disse løsninger, fordi de bruger webteknologier, som de fleste af dem allerede er fortrolige med. Som Electron stolt udråber af sin hjemmeside , "Hvis du kan oprette et websted, kan du oprette en desktop-app."
De er dog mere magtfulde end enkle webapps. Elektronapplikationer har adgang til dit filsystem og andre lokale systemressourcer. Mange CEF-apps er oprindelige applikationer, der integrerer en Chromium-browser. For eksempel integrerer Steam en browser til at vise butiks- og community-grænsefladerne.
Elektronapps er også på tværs af platforme som Chromium. Du kan køre et program som Slack på Windows, Mac og Linux samt på internettet. En udvikler kunne ikke oprette en app på tværs af platforme, hvis hun var afhængig af Microsoft Edge eller Apple Safari-teknologier. Udviklere vil oprette en applikation én gang og køre den overalt. Dette sparer meget tid og ressourcer i forhold til at lave en indbygget applikation til hver platform.
Disse Chrom-baserede løsninger giver en forbedring i forhold til hvad der kom før på mange måder. Inden vedtagelsen af CEF, integrerede Steam Internet Explorer. Mange applikationer på Windows har også simpelthen integreret en Internet Explorer-grænseflade - vi har det meget bedre med Chromium.
PWA'er kunne tilbyde en udvej
Elektron, CEF og lignende teknologier har mange ulemper, men de har også nogle ulemper. Progressive webapps (PWA'er) kunne en dag tilbyde en vej ud, fordi de giver moderne webapps en måde at arbejde offline på. I modsætning til Electron og CEF bruger PWA'er dog din standardwebbrowser i baggrunden. Du kan også installer dem via din webbrowser —Intet behov for manuelt at opdatere og samle Chromium-kode.
Som Microsoft flytter til en Chrom-baseret version af Edge-browseren , vil det være interessant at se, om PWA'er med succes begynder at konkurrere med Electron. Det ville helt sikkert være en renere løsning med lavere hukommelsesforbrug.
RELATEREDE: Hvad er progressive webapps?