Electron: Cross-Platform Desktopapplikationen mit JavaScript

Electron
Patrick Büchler
Wie können wir Dich bei Deinem IT Projekt unterstützen?

Sie suchen nach einer Lösung, um Ihre Softwareentwicklung effizienter und kostengünstiger zu gestalten? Stellen Sie sich vor, eine plattformübergreifende Desktop-Anwendung zu entwickeln, die nicht nur modern und benutzerfreundlich ist, sondern auch passende Webtechnologien optimal nutzt. Haben Sie schon einmal darüber nachgedacht, wie Electron Ihr Unternehmen voranbringen könnte?

Electron: Eine Definition

Electron ist ein Open-Source-Framework, das die Entwicklung plattformübergreifender Desktop-Anwendungen für Mac, Windows und Linux ermöglicht. Es kombiniert die Chromium-Rendering-Engine, die Kompatibilität mit den neuesten Webstandards und eine moderne Benutzeroberfläche ermöglicht, mit Node.js, was Electron zu einer leistungsstarken Lösung für Desktop-Anwendungen macht.

Mit Electron können Entwickler Desktop-Apps mit HTML, CSS und JavaScript schreiben, was die Entwicklungszeiten verkürzt und die Entwicklungskosten senkt, indem sie auf bestehenden Webentwicklungsfähigkeiten aufbauen. Darüber hinaus kümmert sich Electron um die Komplexität der Plattformunterschiede, was es den Entwicklern ermöglicht, sich auf die eigentliche Anwendung zu konzentrieren, während sie gleichzeitig auf eine aktuelle Chrome-Version setzen können.  Electron wurde von Github als Basis für dessen Atom-Texteditor entwickelt und ist heute Basis der Desktop-Apps von Discord, Twitch, WhatsApp und vielen mehr. Hier stellen wie die vier verschiedene Arten von App-Lösungen vor. Welche passt zu Ihrem Unternehmen?

Das Wichtigste auf einen Blick

  • Electron ist ein Open-Source-Framework, das es erlaubt, mit Webtechnologien wie JavaScript, HTML und CSS plattformübergreifende Desktop-Anwendungen zu entwickeln und vereinfacht durch die Handhabung von Plattformunterschieden den Entwicklungsprozess.
  • Die Cross-Platform-Fähigkeiten von Electron ermöglichen es, mit einer einzigen Codebasis Anwendungen für macOS, Windows und Linux zu erstellen, was die Entwicklungskosten senkt und die Effizienz erhöht.
  • Electron bietet Tools und Bibliotheken, die den Entwicklungsprozess unterstützen, wie Electron Forge für das Packaging und die Distribution, und ermöglicht die Integration von automatischen Softwareaktualisierungen sowie die Verwendung von GitHub zur Kollaboration und Beitrag zu Open-Source-Projekten.

Cross-Platform-Fähigkeiten von Electron

Eine der grössten Stärken von Electron ist seine Fähigkeit, plattformübergreifend zu arbeiten. Electron-Apps sind kompatibel mit macOS, Windows und Linux und laufen auf allen unterstützten Architekturen dieser Plattformen. Dies eröffnet einen enormen Vorteil für Entwickler, da sie mit einer einzigen Codebasis Anwendungen entwickeln können, die auf allen Hauptbetriebssystemen funktionieren. Sie schreiben Ihren Code einmal und Electron kümmert sich um den Rest, was die Entwicklungskosten erheblich senkt.

Entwickeln mit Electron: Tools und Bibliotheken

Electron ist nicht nur ein Framework, sondern bietet auch eine Reihe von Tools und Bibliotheken, die den Entwicklungsprozess vereinfachen. Electron Forge ist ein solches All-in-One-Tool für das Packaging und die Distribution von Electron-Anwendungen, das eine vollständige Build-Pipeline einschliesslich Code-Signierung, Installationsprogramme und Veröffentlichung von Artefakten bietet.

Durch seine Plugin API ermöglicht Electron Forge:

  • Das Hinzufügen von benutzerdefinierten Build-Logiken
  • Das Erstellen von benutzerdefinierten Makern und Publishern für Build- und Speicherziele
  • Die Verwendung von First-Party Templates, wie zum Beispiel eine Webpack-Vorlage, um JavaScript-Code für die Produktion zu bündeln und einen Entwicklungs-Server für eine bessere Entwicklererfahrung einzubeziehen.

Warum nutzen wir das Electron-Framework?

Der Vorteil des Electron-Frameworks ist deren vielseitige Einsetzbarkeit und die verkürzten Entwicklungszeiten. Gerade bei Projekten, die eine Web- und Desktoplösung bieten, können grosse Teile des Codes für beides genutzt werden. Das spart Zeit bei Entwicklung und Betreuung der Native Apps. Dies ermöglicht eine schnellere Markteinführung von Anwendungen und bietet die Möglichkeit, auf Änderungen oder Kundenanforderungen flexibel zu reagieren.

Dank dem Einsatz von Node.js und der Möglichkeit C++ in den Quellcode einbauen zu können, wird das Framework zu einer kraftstrotzenden Lösung für Desktop Native Projekte. Unsere Entwickler können serverseitige Funktionen direkt in Ihre Desktop-Anwendungen einbinden. Dies ermöglicht eine nahtlose Kommunikation zwischen Frontend und Backend. Durch die Nutzung von Electron kann ein Unternehmen die Entwicklungskosten senken, da es auf bestehende Webentwicklungsfähigkeiten aufbauen kann und nicht separate Teams für verschiedene Plattformen benötigt.

Automatische Softwareaktualisierungen

Ein weiterer wichtiger Aspekt bei der Entwicklung von Electron-Anwendungen ist die Implementierung von automatischen Softwareaktualisierungen. Electron ermöglicht diese für macOS und Windows-Anwender durch das Modul autoUpdater, welches durch Squirrel unterstützt wird.

Wo hat soxes Electron eingesetzt?

soxes hat das Framework beispielsweise bei der komplexen Management- und Kommunikationslösung s.Guard by Swissphone eingesetzt, um den Desktop Client zu implementieren. Electron wurde als «Container» für den Angular Code genutzt. Die eingebettete Angular App kommuniziert über die Schnittstellen mit dem zugrundeliegenden Betriebssystem. Dank dem Einsatz von Electron konnte die Desktop App von s.Guard effizient und in kurzer Zeit implementiert werden. Die gesamte Projektbeschreibung finden Sie hier!

Wieso soxes?

Mit soxes gewinnen Sie einen Partner mit Kompetenz und Verlässlichkeit. Unser Unternehmen steht seit 20 Jahren für beste Qualität in der Entwicklung, Programmierung und dem Outsourcing von Software. Mit ihren Dienstleistungen deckt soxes den gesamten Lebenszyklus einer Entwicklung (Konzeption, Beratung, Entwicklung und Support) ab. Nehmen Sie den ersten Schritt zur erfolgreichen Umsetzung Ihrer Applikation und kontaktieren Sie uns für weitere Informationen.

Wie können wir Dich bei Deinem IT Projekt unterstützen?
Patrick Büchler

Patrick Büchler
CEO, Partner

+41.. Nummer anzeigen

Das könnte Sie interessieren

TESTEX im Interview: Erfolgreiche Partnerschaft

In diesem Interview gibt Carole Laimbacher uns einen Einblick in die erf...

Alexandra Mittmann

Alexandra Mittmann
Team Lead CSM

Künstliche Intelligenz - Hype oder Chance?

Die generative KI ist in aller Munde. Text- und Bildgeneratoren werden i...

Lirika Gojani

Lirika Gojani
Content Marketing Specialist

Softwareentwicklung Zürich

soxes beschäftigt über 50 Softwareentwickler sowie rund 40 Consultants...

Patrick Büchler

Patrick Büchler
CEO, Partner

KUBE-X: Die Zukunft der Individualsoftware

Damit verzichtbare Kosten, Zeitverlust und Risiken möglichst minimiert ...

Patrick Büchler

Patrick Büchler
CEO, Partner

Mit KUBE-X: Effizient entwickeltes Kreditorenmodul

Ein herausragendes Beispiel für effiziente individuelle Lösungen ist d...

Anastasia Schmuck

Anastasia Schmuck
Project Manager

Was macht ein KI-Entwickler?

Künstliche Intelligenz bzw. Artificial Intelligence ist eine zukunftswe...

Cédric Portmann

Cédric Portmann
Technical Program Manager

10 spannende Software Mythen aufgedeckt!

In der individuellen Softwareetnwicklung herrschen zahlreiche Mythen und...

Lirika Gojani

Lirika Gojani
Content Marketing Specialist

OYM: Innovative Lösungen, grosse Erfolge

Lars Habermacher, Athletiktrainer und Projektleiter bei der OYM AG gewä...

Lirika Gojani

Lirika Gojani
Content Marketing Specialist

Veraltete Unternehmenssoftware? Und jetzt?

Ist Ihre Unternehmenssoftware in die Jahre gekommen und verursacht mehr ...

Patrick Büchler

Patrick Büchler
CEO, Partner

Benötigen Sie ein Security Audit?

Haben Sie Ihre Softwarequalität schon einmal kritisch hinterfragt? Dies...

Robert Schmuck

Robert Schmuck
Head of Development

Wie viel kostet die Cloud?

Unsere Expertise und Erfahrung helfen dabei, die Auswirkungen und Chance...

Roland Amacher

Roland Amacher
Senior Technical Consultant

Wie sicher ist mein Unternehmen?

Warum ist Informationssicherheit in der heutigen Zeit so essenziell? Und...

Lirika Gojani

Lirika Gojani
Content Marketing Specialist

Native vs. Webapp

Native Apps werden für ein spezifisches Betriebssystem, wie Android (in...

Simon Preuss

Simon Preuss
Project Manager

«Hilfe, meine Software hängt!»

Die Wartung von Software bildet das Fundament für eine zuverlässige, s...

Alexandra Mittmann

Alexandra Mittmann
Team Lead CSM

Infrastructure as Code

Infrastructure as Code ist ein Konzept, das in den letzten Jahren immer ...

Cédric Portmann

Cédric Portmann
Technical Program Manager

Kontakt

Hast Du Fragen? Möchtest Du noch mehr über unsere Services erfahren?
Wir freuen uns auf Deine Anfrage.

Kontaktieren Sie uns