Nativ gegen Electron, und wann es wirklich zählt

Die Antwort hängt ganz davon ab, ob das Programm ständig läuft.

Der Streit zwischen nativ und Electron wird meist über die falsche Sache geführt. Die Bündelgröße allein entscheidet nichts. Entscheidend ist, ob das Programm die ganze Zeit läuft. Kosten, die du einmal beim Öffnen zahlst, sind nicht die Kosten, die du acht Stunden lang zahlst.

Immer laufend, oder bei Bedarf geöffnet

Ein Programm, das du startest, benutzt und beendest, wird danach beurteilt, wie gut es seine Arbeit macht. Es darf eine Sekunde zum Starten brauchen und ein paar hundert Megabyte halten, solange es offen ist. Beides verzeihst du, denn die Alternative ist, die Funktion nicht zu haben.

Ein Programm, das vom Anmelden bis zum Herunterfahren in deiner Menüleiste sitzt, wird anders beurteilt, und das soll es auch. Es hält Speicher, während du etwas anderes tust, und es prägt, wie sich der ganze Rechner anfühlt. Ein Menüleisten-Helfer hat bei 300 MB nichts zu suchen. Auf dieser Meinung ruht der Rest hier.

Der Satz der immer laufenden Programme ist klein und bestimmt. Zwischenablage-Verwaltung, Fensterverwaltung, Starter, Bildschirmfoto-Werkzeug, Menüleisten-Ordner, Systemanzeige. Sechs Prozesse mit deinen Anmeldeobjekten, und jedes Megabyte darin ist dauerhaft.

Electron ist ein vernünftiger Handel, und hier ist wann

Drei Plattformen, ein Team. Wenn deine Nutzer auf macOS, Windows und Linux sitzen und du vier Entwickler hast, ist Electron die vernünftige Antwort. Die Alternative sind drei Codebasen und drei Sätze Plattformfehler, und die dritte wird nie fertig.

Komplexe Oberflächen, die du fürs Web schon gebaut hast. VS Code, Slack, Discord und Notion sind Electron-Programme, die eine Menge leisten. Sie zeichnen Dokumente, Editoren und reichhaltige Unterhaltungen, und sie sind auf jedem Schreibtisch deines Teams gleich. Das für eine Plattform in AppKit neu zu schreiben würde Jahre dauern und ein schlechteres Produkt ausliefern.

Eine gemeinsame Web-Anwendung darunter. Wenn das Schreibtisch-Programm ein Blick auf denselben Dienst ist, den der Browser zeigt, ist es ehrliche Ingenieursarbeit und keine Faulheit, die Zeichenschicht zu teilen.

In meinem eigenen Programm ist jedes Bedienelement AppKit und SwiftUI. Der Grund, dass mir das wichtig ist, ist nicht optische Reinheit. Es ist, dass das Fenster die Textbehandlung, das Tastaturverhalten und die Barrierefreiheit des Systems kostenlos erbt, ohne dass ich irgendetwas davon nachbaue.

Der Teil, den niemand bewirbt: Nativ bekommt man die Konventionen der Plattform gratis dazu — und auch ihre Fehler. Beides gehört zum Handel.

Noch ein Punkt für Electron. Ein gut gebautes Electron-Programm schlägt jedes Mal ein schlecht gebautes natives. Nativ ist keine Qualitätsgarantie. Es gibt reichlich langsame, hässliche, schlecht erzogene AppKit-Software, und ich habe während der Entwicklung selbst welche ausgeliefert.

Wo der Handel zerbricht

Eine Browser-Maschine mitzuliefern, um eine Liste mit zehn Zeilen zu zeichnen, ist die Stelle, an der ich aufhöre, sie zu verteidigen. Eine Zwischenablage-Verwaltung liest die Ablage, speichert Zeichenketten und Bilder und zeigt ein kleines Fenster. Nichts davon braucht eine Zeichenmaschine, die für beliebige Webseiten gebaut wurde. Die Maschine hat außerdem einen Speicher-Grundbedarf, bevor dein Code irgendetwas tut.

Der Grundbedarf ist das Problem, nicht die Spitze. Eine Browser-Maschine, die in einen Prozess geladen ist, der nie beendet wird, hält ihren Speicher den ganzen Tag, ganz gleich, ob du etwas kopiert hast. Multiplizier das mit den fünf oder sechs Helfern, die Leute tatsächlich betreiben, und der Rechner fühlt sich anders an.

Auch die Startzeit zählt für diese Programmklasse mehr, als es klingt. Du drückst ein Kürzel und erwartest das Fenster sofort. Das ist ein hartes Ziel, wenn als Erstes ein JavaScript-Laufzeitsystem aufwachen muss.

Die Messlatte, an der ich mich messe

Shottr ist rund 1 MB groß und schneller als das Bildschirmfoto-Werkzeug des Systems. Diese Besessenheit für Tempo ist genau meine Art von Unvernunft, und das ist der Maßstab, an dem ich messe, statt am aufgeblähten Ende des Marktes. Sich mit der schlechtesten verfügbaren Möglichkeit zu vergleichen ist der Weg, mittelmäßig zu werden.

Die kostenlosen quelloffenen Zwischenablage-Programme halten dieselbe Linie unter 2 MB. Sie sind schnell, weil sie sich weigern, sehr viel zu tun, und sie sind kleiner als wir.

Klipto kennenlernen

Klipto ist ein natives Beispiel.

Swift, SwiftUI und AppKit, ein universelles Programm von 11 MB. Es startet sofort und braucht im Leerlauf fast keine CPU.

Sieh, was Klipto kann

Was es wirklich kostet, nativ zu gehen

Es ist langsamer zu bauen, und die Plattform wehrt sich. Mein schlimmster Fehler kostete drei Stunden. Das Fenster wollte sich beim Loslassen der Tasten nicht schließen, und die Ursache war die Art, wie macOS Tastaturereignisse ausliefert. Im Web ist dieses Verhalten ein Ereignis-Empfänger. In AppKit ist es ein globaler Ereignis-Beobachter, der Zustand der Modifikatortasten und zweimal die Dokumentation lesen.

Manche Gerüste sind alt und undokumentiert. HTML unter macOS in gestalteten Text zu verwandeln läuft immer noch über einen alten WebKit-Importeur. Der erste Aufruf in einem Prozess ist langsam, weil er das Gerüst lädt. Das findet man durch Messen, nicht durch Lesen einer Anleitung.

Du gibst jede andere Plattform auf. Keine Windows-Fassung, keine Linux-Fassung, keine Browser-Fassung. Für einen Einzelentwickler ist das eine echte Marktentscheidung, keine Haltungsfrage.

Plattformübergreifend ist ein Geschäftsmodell, kein Kompromiss. Wenn dein Umsatz Windows-Nutzer braucht, ist dieser ganze Beitrag das Problem von jemand anderem, und Electron ist eine vernünftige Wahl.

Was ich gewählt habe

Klipto ist natives Swift, AppKit und SwiftUI, ein Programm ohne mitgeliefertes Laufzeitsystem. Es sind etwa 5 MB zum Laden und rund 11 MB installiert. Es läuft immer, und das ist der einzige Grund, warum diese Zahlen überhaupt der Rede wert sind.

Ich baue nur für den Mac. Eine Plattform, ordentlich gemacht, schlägt drei, schlecht gemacht, und mir sind ein kleinerer Markt und ein Programm lieber, das sich richtig anfühlt. Der sichtbare Lohn ist klein: Das Fenster erscheint, wenn du ⌥⌘V drückst, und es ist weg, wenn du loslässt. Das Halten-und-Einfügen-Fenster arbeitet so, weil native Ereignisbehandlung es möglich macht — nachdem ich einen Nachmittag daran verloren habe.

Die Grenze ist deutlich genug. Wenn du deinen Zwischenablage-Verlauf unter Windows oder im Browser brauchst, habe ich nichts für dich, und ich habe es auch nicht vor.

Häufige Fragen

Sind Electron-Programme schlecht für den Mac?

Nein. Sie passen schlecht zu Helfern, die den ganzen Tag laufen, und sind eine vernünftige Wahl für große Programme, die du öffnest, beendest und auf mehr als einer Plattform brauchst.

Wie viel Speicher braucht Electron?

Das hängt vollständig vom Programm ab, und jede einzelne Zahl wäre irreführend. Was bleibt, ist der Grundbedarf: Eine mitgelieferte Browser-Maschine kostet Speicher, bevor dein eigener Code läuft.

Ist nativ immer schneller?

Nein. Ein gut gebautes Electron-Programm schlägt ein schlecht gebautes natives. Nativ entfernt feste Kosten, und was du mit dem Rest machst, liegt bei dir.

Warum 2026 nur für den Mac bauen?

Weil eine Plattform, ordentlich gemacht, für ein kleines Team erreichbar ist und drei Plattformen es meistens nicht sind. Außerdem lässt es dich die Konventionen des Systems benutzen, statt sie anzunähern.

Weiterlesen

Natives Swift, ein Programm, kein mitgeliefertes Laufzeitsystem. Klipto laden, 14 Tage alles, ohne Karte, ohne Konto.

0

Hör auf, dasselbe zweimal zu kopieren. Klipto laden.

Lokal · keine Karte, kein Konto · macOS 14+ · 7.5 MB