Har du bemærket mange nye desktop-applikationer ser stort set ud som hjemmesider? Det er ikke din fantasi.
Fra Trello til Slack, fra WordPress.com til Github, er det blevet mere og mere almindeligt for såkaldte desktop-applikationer at kombinere et websted med nogle få indfødte funktioner som meddelelser, filsystemadgang og menuer. Den mest almindelige teknologi, der gør det muligt, kaldes Electron, og det bruges af nogle få applikationer, som du måske ikke engang har mistanke om, ligesom chatprogram Discord og Microsofts Visual Studio-kode.
Electron gør det nemt for udviklere at frigive en app samtidigt på Windows, macOS og Linux, men der er ulemper for brugere. Elektron applikationer er enorme, for en ting. Slack, en chat applikation, optager 237 MB harddiskplads på min Mac, og hukommelsesforbruget er heller ikke lavt. Hvad tager alle disse ressourcer op? Og hvorfor bruger udviklere noget, der er så ineffektivt?
Desktop-applikationer er svært at lave, især hvis du vil have dem til at være cross-platform. Adgang til filsystemet fungerer forskelligt i Windows, end for eksempel i Linux, og meddelelser fungerer forskelligt på MacOS end i Windows. Det betyder, at alle, der ønsker at skrive en ansøgning til alle tre desktop-operativsystemer (eller endda to af dem), skal skrive mange af deres kode igen, når de overføres fra den ene til den anden.
Electron "løser" dette ved at tilbyde en enkelt platform, der fungerer på alle tre store desktop-operativsystemer. Dette betyder, at udviklere kan skrive koden til ting som meddelelser en gang og forventer, at det fungerer indbygget på alle operativsystemer. Endnu bedre for udviklere: Alt, hvad der kan bygges ved hjælp af Javascript, HTML og CSS-teknologier, er alle, der koder for internettet, meget bekendt med.
Hvordan er det muligt? Til dels fordi hver Electron app bundter en komplet webbrowser: Chromium, open source-versionen af Google Chrome. Dette er bundtet sammen med de platformspecifikke instruktioner for at sikre, at alt opfører sig nøjagtigt som udviklere forventer på alle systemer. Derfor rummer desktopversionen af Slack over 200 MB harddiskplads: det meste af Chrome er bundtet der.
Hver Electron app du kører er mere eller mindre en fuld forekomst af Chrome. Som blogger Joseph Gentle påpegede, er dette næsten ikke ideelt:
Du kan tænke på Slack som et lille javascriptprogram, der kører inde i et andet operativsystem VM (chrome), som du skal løbe for at kunne snakke om IRC. Selvom du har den rigtige krom åben, kører hver elektronik app sin egen ekstra kopi af hele VM'en.
Så ja, der er ulemper for brugere. Først og fremmest downloader hver enkelt elektron-applikation bundter det meste af Chromium, og hver applikation, du kører, udfører en god del af den pågældende kode. Der er ingen deling af ressourcer her, som der er med indbyggede applikationer, hvilket betyder, at elektron apps vil tage mere plads på harddisken og hukommelse end en applikation udviklet med din platform specifikt i tankerne. Hvis ydeevne er noget, du virkelig bekymrer dig om, kan du undgå elektronprogrammer.
På dette tidspunkt er computere så kraftfulde, at de fleste brugere aldrig engang vil se, hvordan ineffektiv elektron ansøgninger er. Faktisk har det store flertal aldrig engang hørt om Electron. De fleste af mine kolleger havde ikke, og de bruger alle Slack hver dag. Mange var glade for at se en desktop version af Trello komme ud, og igen havde ingen anelse om, at det var en Electron app.
Og disse apps integrerer virkelig bedre med dit operativsystem bedre end hjemmesider. De bor i deres eget vindue. De tilbyder fantastiske tastaturgenveje, indgående beskeder og andre ting, du ikke kan gøre på samme måde med en browser.
Og det er en god indsats, at applikationer som Slack, Trello og WordPress.com ikke ville genere at byde på en desktop version, hvis Electron ikke eksisterede, fokuserer i stedet på mobile og browser versioner. Så spørgsmålet er ikke, om Electron er dårlig; det er om elektron applikationer er bedre end ingenting. Jeg er villig til at sige ja, men rimelige mennesker kan være uenige. (Og hej, for de mennesker, er der altid webversionen.)
Sådan kører du PowerShell-kommandoer på fjerncomputere
PowerShell Remoting giver dig mulighed for at køre PowerShell-kommandoer eller få adgang til fuld PowerShell-sessioner på eksterne Windows-systemer. Det ligner SSH for at få adgang til eksterne terminaler på andre operativsystemer. PowerShell er som standard lukket, så du skal aktivere PowerShell Remoting før du bruger den.
Sådan bruges værktøjet Snipping i Windows til at tage skærmbilleder
Der er masser af værktøjer derude til at tage skærmbilleder i Windows. Du skal muligvis ikke installere en tredjeparts app. Skæringsværktøj, der er inkluderet i Windows Vista og senere, giver dig mulighed for at tage skærmbilleder, samt redigere og annotere dem. Vi har kort beskrevet Snipping Tool i vores artikler om at tage skærmbilleder på næsten enhver enhed og tage skærmbilleder i Windows 10, men vi vil gå i detaljer her, og vise dig hvordan du tager, gemmer, redigerer, annoterer og emailer skærmbilleder samt hvordan du tilpasser indstillingerne i skæringsværktøjet.