Connect with us

Wie man

Diese native App ist wahrscheinlich nur ein alter Webbrowser

Diese native App ist wahrscheinlich nur ein alter Webbrowser

Chrome hat nicht nur das Web übernommen, sondern auch native Apps. Viele der Anwendungen, die Sie unter Windows, Mac und sogar Linux ausführen, bestehen aus veralteten Teilen von Chromium, der Engine, die die Grundlage für Google Chrome bildet.

Welche Apps werden aus Chromium erstellt?

Es gibt mehrere Möglichkeiten für einen Entwickler, eine Anwendung mit der Chromium-Browser-Engine zu erstellen. Electron ist die bekannteste, aber viele andere Anwendungen verwenden etwas namens CEF, das Chromium Embedded Framework.

Online chatten? Slack ist eine beliebte Anwendung, die mit Electron erstellt wurde. Notizen machen? Evernote verwendet CEF und Trello verwendet Electron. Musik spielen? Ja, Sie haben es erraten – Spotify verwendet CEF, ebenso wie Amazon Music.

Man könnte meinen, Microsoft würde vor Chromium zurückschrecken, weil es schließlich Windows erstellt hat. Sie würden falsch liegen. GitHub Desktop, Microsoft Teams, Skype, Visual Studio Code und Yammer sind alles Electron-Apps. Sogar die neue Xbox-App für Windows 10 basiert auf Electron und nicht auf Microsofts eigener UWP (Universal Windows Platform).

PC-Spiele bleiben meist bei nativen Apps, aber ihre Launcher und zugehörigen Chat-Tools tun dies sicherlich nicht. Discord und Twitch.tv verwenden Electron. Battle.net, Desura, Epic Games Launcher, GOG Galaxy, Uplay und sogar Steam verwenden alle CEF. Der Origin-Client von EA verwendet Qt WebEngine, die auch Chromium-Code integriert.

Sie können sich ein Bild davon machen, wie viele Anwendungen Chromium verwenden, indem Sie die sehr unvollständigen Listen von Elektron und CEF-Apps auf Wikipedia. Backup-Apps wie CrashPlan sind dort ebenso enthalten wie Passwortmanager wie Bitwarden und Dienstprogramme wie Adobe Creative Cloud.

Es ist wie eine Web-App (braucht jedoch mehr RAM und Speicherplatz)

Slack-Speichernutzung im Windows Task-Manager.

Jede Electron- oder CEF-basierte Anwendung bündelt eine separate Kopie von Teilen von Chromium. Anwendungen, die Electron und CEF verwenden, ähneln Web-Apps in Ihrem Webbrowser, sind jedoch weniger effizient und verbrauchen mehr Speicher auf Ihrem System.

Wenn Sie Gmail in einem Chrome-Tab und Facebook in einem anderen öffnen, muss Ihr Betriebssystem nur eine Kopie von Chrome ausführen. Wenn Sie jedoch zwei verschiedene Electron- oder CEF-Anwendungen ausführen, benötigt Ihr Betriebssystem für jede eine separate Kopie von Electron oder CEF.

Es ist nicht ungewöhnlich, dass insbesondere eine Electron-basierte Anwendung überraschend viel RAM verbraucht. Da jede dieser Anwendungen separate Chromium-Dateien enthält, belegen sie zusätzlichen Speicherplatz auf Ihrem System.

Warum sind sie veraltet und ist das ein Problem?

Sicherheitsdokumentation von Electron erklärt, warum der Code auf veralteten Versionen von Chromium basiert:

„Während Electron bestrebt ist, neue Versionen von Chromium so schnell wie möglich zu unterstützen, sollten sich Entwickler bewusst sein, dass ein Upgrade ein ernsthaftes Unterfangen ist – das manuelle Bearbeiten von Dutzenden oder sogar Hunderten von Dateien erfordert. Angesichts der heute verfügbaren Ressourcen und Beiträge wird Electron oft nicht auf der neuesten Version von Chromium sein und mehrere Wochen oder einige Monate hinterherhinken.“

Auch nachdem das Electron-Projekt diese neue Version erstellt hat, müssen Entwickler, die Electron-Anwendungen erstellen, diesen Code nehmen, in ihre Electron-Anwendungen integrieren und ein Update senden.

Dies ist jedoch nicht so beängstigend, wie es sich anhört. Die Dokumentation von Electron rät Entwicklern, nicht vertrauenswürdigen Code anzuzeigen und sich hauptsächlich auf lokale Ressourcen oder vertrauenswürdige, sichere Remote-Inhalte zu verlassen. Deshalb scheinen viele Electron-Anwendungen keine Webbrowser zu sein. Slack verwendet beispielsweise Webtechnologien, um eine Chat-Oberfläche bereitzustellen, aber du gehst zu deinem Webbrowser, sobald du auf einen Link klickst.

Warum verwenden Entwickler Chromium?

Entwickler mögen diese Lösungen, weil sie Webtechnologien verwenden, mit denen die meisten von ihnen bereits vertraut sind. Wie Electron stolz auf seine Startseite, «Wenn Sie eine Website erstellen können, können Sie eine Desktop-App erstellen.»

Sie sind jedoch leistungsfähiger als einfache Web-Apps. Electron-Anwendungen können auf Ihr Dateisystem und andere lokale Systemressourcen zugreifen. Viele CEF-Apps sind native Anwendungen, die einen Chromium-Browser einbetten. Steam bettet beispielsweise einen Browser ein, um die Store- und Community-Schnittstellen anzuzeigen.

Electron-Apps sind auch plattformübergreifend, wie Chromium. Sie können eine Anwendung wie Slack unter Windows, Mac und Linux sowie im Web ausführen. Eine Entwicklerin könnte keine plattformübergreifende App erstellen, wenn sie auf Microsoft Edge- oder Apple Safari-Technologien angewiesen wäre. Entwickler möchten eine Anwendung einmal erstellen und überall ausführen. Dies spart viel Zeit und Ressourcen gegenüber der Erstellung einer nativen Anwendung für jede Plattform.

Diese auf Chrom basierenden Lösungen bieten in vielerlei Hinsicht eine Verbesserung gegenüber den Vorgängern. Vor der Einführung von CEF hat Steam den Internet Explorer eingebettet. Viele Anwendungen unter Windows haben auch einfach eine Internet Explorer-Oberfläche eingebettet – mit Chromium sind wir viel besser dran.

PWAs könnten einen Ausweg bieten

Die "App installieren?" Popup in Google Chrome.

Electron, CEF und ähnliche Technologien haben viele Vorteile, aber auch einige Nachteile. Progressive Web Apps (PWAs) könnten eines Tages einen Ausweg bieten, da sie modernen Web-Apps die Möglichkeit bieten, offline zu arbeiten. Im Gegensatz zu Electron und CEF verwenden PWAs jedoch Ihren Standard-Webbrowser im Hintergrund. Sie können sie auch über Ihren Webbrowser installieren – Sie müssen den Chromium-Code nicht manuell aktualisieren und bündeln.

Da Microsoft zu einer Chromium-basierten Version seines Edge-Browsers wechselt, wird es interessant sein zu sehen, ob PWAs erfolgreich mit Electron konkurrieren. Es wäre definitiv eine sauberere Lösung mit geringerer Speicherauslastung.

Continue Reading
Click to comment

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Tendencia