© Denys Koltovskyi/Shutterstock.com
Cross-Plattform-Desktopsoftware mit ASP.NET Core

Electron.NET - das Oberflächen-API


Das klassische .NET Framework wurde von Microsoft komplett neu entwickelt. Das Ergebnis heißt jetzt .NET Core. Das besondere an der Wiedergeburt ist, dass es auf allen gängigen Plattformen wie Windows, Mac und Linux läuft. Nur bietet Microsoft hierbei keine GUI-Lösung. Der Nachfolger der WPF, die UWP, läuft nun mal nur auf Windows 10. Eine Einschränkung, die das Potenzial von .NET Core nicht ausschöpft. Inspiriert vom Open-Source-Framework Electron, war das die Geburtsstunde von Electron.NET.

Das GitHub-Team hat nicht nur eine tolle Open-Source-Plattform ins Leben gerufen, sondern auch eigene interessante Open-Source-Projekte. Eines davon ist Electron. Ursprünglich hieß es Atom Shell und diente als Cross-Platform-Desktoplösung für ihre hauseigene Entwicklungsumgebung Atom. Diese sollte auf Windows, Mac und Linux laufen. Die innovative Architektur und Performance steigerten die Beliebtheit von Electron. Microsoft selbst setzt darauf und nutzt es für die neue Entwicklungsumgebung Visual Studio Code. Ebenfalls beteiligen sich Microsoft und viele andere große Firmen an der Weiterentwicklung von Electron. Kurz zusammengefasst: Electron ist eine solide und ausgereifte Technologie für Cross-Platform-Desktoplösungen.

Von Electron zu Electron.NET

Die Laufzeitumgebung von Electron ist Node.js. Somit werden die Prozesse hauptsächlich in JavaScript geschrieben – ein Problem für den leidenschaftlichen .NET-Entwickler. Das erkannten die beiden Autoren, und das war die Geburtsstunde von Electron.NET, das jetzt kostenlos und Open Source zur Verfügung steht [1]. Dabei erfindet Electron.NET das Rad nicht neu, sondern baut auf dem soliden Electron auf. Das bringt einige Vorteile mit sich, wie zahlreich vorhandene API-Funktionen, Stabilität und eine große Community.

Die Anatomie

Aus Architektursicht hostet eine fertige Electron-Anwendung das ASP.NET-Core-Projekt. Über das Electron.NET API von Electron.NET kann dann auf das Standard-Electron-API [2] zugegriffen werden. Dieses beinhaltet zahlreiche Funktionen für den Zugriff auf plattformspezifische Funktionen, wie zum Beispiel das Auslösen von Benachrichtigungen (Push Notifications), Anzeige eines Tray-Icons, Zugriff auf den Zwischenspeicher und vieles mehr. Funktionen für das Management des Lebenszyklus der Anwendung sind ebenfalls zahlreich vorhanden. Der .NET-Entwickler hingegen spürt überhaupt nichts aus dieser JavaScript-Welt. Er kann wie gewohnt mit C# arbeiten und dennoch auf die ganze Vielfalt von Electron zugreifen....

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang