PWA vs. Elektron: Ein tiefer Tauchgang

Veröffentlicht: 2020-05-20

Inhaltsverzeichnis

Es scheint, dass es heutzutage zu viele neue Technologien auf dem Gebiet gibt, als dass wir den Überblick behalten könnten. Erst kürzlich sehen wir ein Auftauchen von Electron.js, einer leistungsstarken Plattform hinter einer nicht ganz so kleinen Anzahl beliebter Apps, die wir jeden Tag verwenden, und dann gibt es auch Progressive Web App, die ein neuer Weg dafür sein soll Websites, um erstklassige, ansprechende Kundenerlebnisse zu bieten, ohne dabei die Leistung zu beeinträchtigen.

Um Ihnen dabei zu helfen, den Überblick über all diese neu entdeckten Technologien zu behalten, werden wir heute im SimiCart-Artikel die beiden – Electron und PWA – auf umfassendste Weise vergleichen.

Was ist PWA?

PWA scheint heutzutage sehr angesagt zu sein, da es sich um eine Technologie handelt, die von Google selbst unterstützt wird und die die ganze Aufmerksamkeit der großen Jungs wie Microsoft mit ihrem ehrgeizigen Plan hat, den Microsoft Store mit PWA zu füllen. Der Grund, warum es so beliebt ist, ist, dass PWA selbst das Beste ist, was seit Jahren aus dem Internet gekommen ist – seine Erfolgsbilanz spricht für sich.

Einfach ausgedrückt sind Progressive Web Apps Websites, die wie eine App aussehen und sich auch so anfühlen. Die Technologie ist eine Mischung aus den besten Funktionen aus dem Web und nativen Anwendungen, was bedeutet, dass Benutzer, die PWA verwenden, von allen Funktionen profitieren können, die zuvor nur nativen Apps vorbehalten waren, wie Push-Benachrichtigungen, Geolokalisierung und mehr.

Twitter-PWA
Twitter im Microsoft Store ist eine PWA

Was ist Elektron?

Im Vergleich zu PWA ist Electron in vielerlei Hinsicht ähnlich, da es ebenfalls Technologien des Internets – dh HTML, CSS, JavaScript – nutzt, um die plattformübergreifende Herausforderung am besten zu bewältigen. Im Gegensatz zu PWA können Electron-betriebene Apps jedoch aufgrund der Verwendung nativer APIs und der Rendering-Engine von Chromium in voll funktionsfähige Desktop-Anwendungen umgewandelt werden. Tatsächlich ist es so funktional, dass es oft nicht von nativen Desktop-Anwendungen zu unterscheiden ist, und Sie könnten auf eine gestoßen sein, ohne zu wissen, dass sie auf Electron basiert – zum Beispiel sind einige Ihrer wichtigen Anwendungen wahrscheinlich Electron-basiert, einschließlich Skype, Slack, Discord und Visual Studio-Code.

Discord Elektron

Klingt Electron nicht direkt besser?

Nun, wenn du es so ausdrückst … tut es das irgendwie; aber nein, es ist nuancierter als das. Es gibt einen Grund dafür, dass die Zahl der Electron-basierten Apps in letzter Zeit zurückgegangen ist – das liegt daran, dass Electron in die Jahre gekommen ist, insbesondere in einer Zeit, in der Benutzer jetzt mehr denn je die Omnichannel-Erfahrung verlangen, die PWA bietet .

Als wir erfahrene Entwickler von Electron und PWA um Input gebeten haben, sind uns die folgenden Muster aufgefallen:

  • Verfügbarkeit : Da Electron-basierte Apps so ziemlich eine Hybridversion von Desktop-Anwendungen sind und überhaupt nicht auf Mobilgeräten installiert werden können, hat PWA die Oberhand, auf fast jedem Gerät verfügbar zu sein, das über einen PWA-kompatiblen Browser verfügt.
  • Leistung : Eine Electron-basierte App sollte sich bei richtiger Ausführung genauso schnell und leicht anfühlen wie eine Textanwendung – aber das ist nicht die beste Leistung, die Sie bekommen können. Ein bekannter Vorteil von PWA ist, dass Sie beim ersten Laden eine bessere Leistung (im Vergleich zu Electron) und bei weiteren Ladevorgängen eine nahezu sofortige Ladezeit erzielen können, da alles im laufenden Betrieb zwischengespeichert wird und ein Großteil des JavaScript-Overheads stattdessen auf die verschoben werden kann Servicemitarbeiter, die ein wesentlicher Bestandteil von PWA sind.
  • Aktualisierung : Wie wir alle wissen, ist die Aktualisierung (und Bereitstellung im Allgemeinen) ein großer Aufwand für native Anwendungen jeglicher Art – und Electron ist da keine Ausnahme. Dies kann vermieden werden, indem Sie sich für den PWA-Ansatz entscheiden, bei dem der gesamte Update-Prozess auf der Serverseite erfolgen kann, wodurch Ihre Clients von der Installation von Updates entlastet werden.
  • Größe : Electron wiegt zwar weniger als die typische Desktop-Anwendung, ist aber immer noch erheblich schwerer als PWA. Es ist schwer, eine Electron-App zu finden, die weniger als 50 MB wiegt, während die meisten PWAs unter einem Megabyte liegen.
  • Sicherheit : PWA ist einfach besser, wenn es um Sicherheit geht, da es sich vollständig auf sichere Verbindungen (HTTPS) stützt, die von der Browserseite unterhalten werden, während Electron als Webanwendung, die in einen nativen App-Container verpackt ist, alles manuell selbst erledigen muss.

Warum PWA immer beliebter wird

Hier ist die Wahrheit, Electron ist eine veraltete Technologie. Obwohl es derzeit von einer großen Anzahl von Desktop-Anwendungen verwendet wird, haben viele von ihnen bereits Pläne, ihre bestehenden Electron-basierten Desktop-Anwendungen auf PWA umzustellen. Ja, Sie können eine Electron-basierte App in eine PWA konvertieren, obwohl dies nicht so reibungslos vonstatten geht wie die Konvertierung von PWA zu Electron, aber es ist möglich.

Elektron ohne all seine Fehler

Progressive Web-Apps können als bessere, sich möglicherweise weiter entwickelnde Technologie bezeichnet werden, da sie die grundlegenden Probleme von Electron – Kompatibilität und einfache Verteilung – lösen, während sie funktional und ansprechend für die Benutzererfahrung bleiben. Dies liegt an der Tatsache, dass Browser heute zu ihrem eigenen universellen Betriebssystem mit allen Funktionen werden, die Sie sich wünschen können, und als Nebeneffekt davon werden Technologien, die auf das Web angewiesen sind und darauf laufen, wie PWA, mit der Zeit immer besser .

 Mehr sehen: 
Desktop PWA – Die Zukunft der Softwarebereitstellung
PWA für Magento 2

Omnichannel

Wenn es um das Omnichannel-Erlebnis geht, zeichnet sich PWA in jeder erdenklichen Weise aus, da es speziell für das reaktionsschnelle Multi-Device-Erlebnis entwickelt wurde. Abhängig von der Art des betreffenden Unternehmens kann PWA die erste Wahl für Unternehmen sein, die möchten, dass die Benutzererfahrung auf allen Geräten gleich ist, während Sie mit Electron JS unterschiedliche Codebasen für verschiedene Plattformen entwickeln müssten und somit zunehmen würden die Entwicklungskosten.

Wann man sich für Electron entscheidet

PWA hat zwar seine Vorteile, kann aber keine allumfassende Lösung für alle Geschäftsmodelle sein, und hier findet Electron seine Nische. Apps, die auf Electron basieren, unterliegen normalerweise nicht den üblichen Browserbeschränkungen und können basierend auf der Node.js-Funktionalität frei entwickelt werden, mit der Electron auf alle nativen APIs des Betriebssystems zugreifen kann. Dies bedeutet, dass Electron-basierte Apps die ganze Zeit im Benutzermodus ausgeführt werden, wodurch effektiv eine sichere und stabile Betriebsumgebung für den Benutzer gewährleistet wird.

Als Faustregel innerhalb der Electron-Community gilt, dass es niemals eine gute Idee ist, Electron für etwas zu verwenden, das nur eine Website sein kann . Wenn Sie also der Meinung sind, dass Ihre App zu den wenigen Fällen gehört, in denen Sie die zusätzlichen Freiheiten und Funktionen nativer Anwendungen benötigen, entscheiden Sie sich für Electron. aber in jedem anderen Fall ist eine PWA mehr als ausreichend.

Wörter einpacken

Das Web mit seinen Technologien holt schnell auf, und in Kombination mit der Bewegung großer Marken, die Einführung von PWA voranzutreiben, sollte es Sie nicht überraschen, in Zukunft mehr von PWA zu sehen. Das heißt jedoch nicht, dass Electron auch auf dem Sterbebett liegt, da die Technologie immer noch recht funktionsfähig ist und voraussichtlich noch eine ganze Weile hier sein wird; Aber wenn Sie einer von denen sind, die zwischen den beiden überlegen, ist PWA eine einfache Wahl, da die Technologie noch relativ frisch ist und die Unterstützung dafür in naher Zukunft voraussichtlich in die Höhe schnellen wird.


Weiterlesen:
PWA vs Flutter: Ein detaillierter Vergleich

Alles, was Sie über Progressive Web Apps wissen müssen

Progressive Webanwendungen: 12 Beispiele von echten Marken für Ihre Inspiration

Magento PWA Studio: Ein detaillierter Vergleich mit Vue Storefront