Wolfgang Schmidt Selbstständig

Mit Electron ist es mit nicht allzu viel Aufwand möglich, auf React-Basis implementierte Browseranwendungen in eigenständige Anwendungen für verschiedene Desktopbetriebssysteme zu überführen. Im Ergebnis kann aus ein und demselben Quellcode Software für verschiedene Plattformen generiert werden.

Eine Desktopapplikation für ein bestimmtes Betriebssystem zu schreiben, ist heutzutage relativ einfach. Für die gängigen Betriebssysteme sind zahlreiche Entwicklungsumgebungen und Bibliotheken verfügbar, mit denen mit wenig Aufwand Anwendungen mit grafischer Oberfläche erstellt werden können. Allerdings sind die so erstellten Programme nicht plattformunabhängig. Hier setzt Electron als vielversprechende Lösung an.

Plattformunabhängige Desktopanwendungen zu schaffen, ist nicht wirklich ein Kinderspiel. Eine mit Visual Studio erstellte Windows-Applikation lässt sich unter Linux etwa nicht verwenden. Seit langer Zeit werden daher Möglichkeiten gesucht, eine Anwendung einmalig zu implementieren (write once), und sie dann ohne wesentlichen Zusatzaufwand für verschiedene Betriebssysteme bereitstellen zu können (run everywhere). Electron ist ein weiterer Versuch, dieses Problem zu lösen. In diesem Artikel sehen wir uns anhand eines einfachen Beispiels an, wie eine Anwendung mit Electron und React implementiert und für verschiedene Betriebssysteme bereitgestellt werden kann.

Plattformunabhängige Programmierung

Seit Computer in Textform programmiert werden, besteht aus Sicht des Programmierers der Wunsch, ein Programm, das einmalig für einen bestimmten Computer geschrieben wurde, auch auf einem anderen Computer ausführen zu können. Der Grund liegt auf der Hand: Ist der Algorithmus für ein bestimmtes Problem korrekt formuliert, sollte es reichen, diese Arbeit einmalig durchzuführen, um das Programm in verschiedenen Umgebungen lauffähig zu machen. Zur Anfangszeit der Programmierung, als nur die maschinennahe Programmierung (Maschinensprache oder Assembler) verfügbar war, war das nicht gegeben, da diese Programmiertechniken es nicht erlaubten, eine Problemlösung bzw. einen Algorithmus unabhängig von der Ausführungsumgebung, der konkreten Maschine, zu formulieren. Die Lösung für dieses Problem war die Einführung der höheren Programmiersprachen. Diese erlaubten es, Algorithmen weitgehend unabhängig von der konkreten Ausführungsumgebung zu formulieren. Um die Programme ausführbar zu machen, wurden Übersetzerprogramme, Compiler und Interpreter eingeführt.

Eine typische Compilersprache ist etwa C. C wurde ursprünglich entwickelt, um Betriebssysteme schreiben zu können, die auf verschiedenen Computerarchitekturen lauffähig sein sollten. Ein C-Compiler übersetzt dabei den maschinenunabhängigen C-Code in für die konkrete Maschine ausführbaren Maschinencode. Soll das Programm für eine weitere Maschine verfügbar gemacht werden, muss es vorher mit dem Compiler für diese Maschine neu übersetzt werden. Die Übersetzung geschieht also, bevor das Programm ausgeführt wird.

Den vollständigen Artikel lesen Sie in der Ausgabe:

PHP Magazin 4.19 - "Den Monolith fachgerecht zerlegen"

Alle Infos zum Heft
579890003Einfache Desktopanwendungen mit Electron und React
X
- Gib Deinen Standort ein -
- or -