Intersim AG – Zur Startseite
Kontakt

MAUI: Eine Codebasis für alles

Mockup MAUI in der Intersim

MAUI steht für Multi-Applikation User Interface und ist ein Framework im Microsoft .NET Umfeld, mit dem möglichst viel Arbeit nur einmal gemacht werden muss, auch wenn das Produkt danach auf ganz verschiedenen Umgebungen laufen wird. So können Synergien genutzt und Doppelspurigkeiten vermieden werden.

Autor:in
Mark Mancktelow
Veröffentlicht

Konkret werden neben der Browserversion auch Android und Apple iOS Apps sowie macOS und Windows unterstützt.

Somit existiert die Datenhaltung, -verarbeitung und Businesslogik nur einmal. Dies verkürzt nicht nur die Entwicklungszeit und somit die Aufwände, sondern vereinfacht danach auch Erweiterungen und Anpassungen.

Kundenbedürfnis

Im Falle des Schulzug-Quiz der SBB war die konkrete Anforderung, dass ihr Quiz sowohl online im Browser als auch offline auf einem Windows-Gerät ohne Installation ab einem USB-Stick laufen muss.

Nach einer vertieften Evaluation verschiedener Frameworks wie auch z.B. Electron fiel die Wahl auf MAUI. Andere Frameworks hätten ebenfalls problemlos Browser- und Windows-Versionen unterstützt, ausblickend für die Zukunft wollten wir uns aber die Option einer App offenhalten. Sollte sich das Bedürfnis der Kundin künftig in diese Richtung entwickeln, sind wir mit .NET MAUI bestens dafür aufgestellt.

Blick hinter die Fassade

Der Aufbau der Lösung basiert auf drei verschiedenen Applikationen:

  1. Die Verwaltung der Fragen sowie die Bereitstellung dieser Daten für die Online- und Offlineversion wird von Sitevision – unserem hauseigenen CMS – übernommen.
  2. Für die Online-Version werden diese Daten über eine API in Echtzeit von der Applikation in dem Ausmass bezogen, in dem sie auch verwendet werden. Das Sitevision übernimmt die zufällige Auswahl der relevanten Fragen.
  3. Bei der Offline-Version werden immer alle verfügbaren Fragen als Export geliefert und der Applikation in Form einer Datei bereitgestellt. Die Applikation lädt daraus dann eine Auswahl.

Diese beiden Ansätze sind im Code aber durch eine Prüfung der aktuellen Umgebung abgedeckt. Die Codebasis beider Versionen ist also identisch und enthält beide Ansätze. Es wird zur Laufzeit entschieden, welche davon angewendet werden muss.

Dank der Unterstützung durch .NET MAUI kann mit wenigen Klicks entschieden werden, ob aus der gemeinsamen Basis die Browser- oder Offline-Version erstellt werden soll. Diese wird dann via Webserver an den Benutzer entweder als Webseite oder als herunterladbares .exe ausgeliefert.

Weitere mögliche Einsatzbereiche von MAUI

Wie bereits erwähnt, bietet MAUI neben der für den Schulzug der SBB verwendeten Möglichkeiten zusätzlich noch das Erstellen von mobilen Apps für Android und iOS an.

Wir haben bereits andere Projekte (mehr dazu im nächsten Insights Ende Mai) in der Entwicklung, bei denen diese Möglichkeiten weiter ausgeschöpft werden.

Dadurch, dass nicht mehr für jede Plattform eine eigene Applikation entwickelt und gewartet werden muss, sondern alles an einem zentralen Ort vorhanden ist, steigt die Effizienz. So kann auf einfachem Weg die gewünschte Version erstellt werden, was zudem Fehler und Diskrepanzen zwischen den verschiedenen Betriebssystemen reduziert.

Wir werden auch in Zukunft gerne dieses bewährte Framework für weitere Lösungen einsetzen.

Verwandte Themen

Weiterführende Projekte und Inhalte zum Thema

Website Mobile-App

Quellen:

Learn Microsoft dotnet MAUI