.NET MAUI vs. Xamarin: Lohnt sich der Wechsel?

Aufgrund der Veröffentlichung von .NET MAUI, einem neuen Framework für Multiplattform-Anwendungen, erwägen viele Entwickler:innen den Wechsel von Xamarin. In diesem Blog-Beitrag werfen wir einen genaueren Blick auf beide Frameworks und helfen Ihnen bei der Entscheidung.

app store

Xamarin ist seit vielen Jahren eine beliebte Option für die plattformübergreifende App-Entwicklung. Nun hat es weitere Konkurrenz durch Microsofts ".NET Multi-platform App UI" (MAUI) bekommen. Das Framework ist zwar aus Xamarin.Forms hervorgegangen, verspricht jedoch eine noch einfachere Entwicklung plattformübergreifender Anwendungen.

Ob Sie von Xamarin zu MAUI wechseln sollten, hängt von mehreren Faktoren ab, die wir uns im Folgenden genauer ansehen.

Was ist Xamarin?

Xamarin ist ein Entwicklungs-Framework aus dem Jahr 2011, das die Programmiersprache C# verwendet. Seine Wurzeln reichen jedoch bis ins Jahr 2001 zurück – auf ein Projekt, eine Linux-Version von Microsofts .NET Framework zu entwickeln.

2016 kaufte Microsoft das Unternehmen Xamarin zusammen mit dem gleichnamigen SDK. Xamarin wurde daraufhin Teil von Microsoft Visual Studio und wechselte zur Open-Source MIT-Lizenz.

Mit Xamarin.Forms können Sie Apps in C# für Android, iOS, macOS und Windows mit einer gemeinsamen Code-Basis schreiben. Mit einigen zusätzlichen Anpassungen in den plattform-spezifischen Programmiersprachen ist es möglich, eine nahezu native Leistung zu erzielen. Das macht es zu einer interessanten Alternative zu anderen plattformübergreifenden Frameworks wie Flutter und React Native.

Vor kurzem wurde Xamarin.Forms in das .NET MAUI-Framework von Microsoft integriert.

Was ist .NET MAUI?

Mit .NET MAUI möchte Microsoft die plattformübergreifende App-Entwicklung noch einfacher machten. Wie Xamarin ermöglicht das neue Open-Source-Framework Entwickler:innen die Erstellung nativer Benutzeroberflächen und Anwendungen für iOS, Android, macOS und Windows unter Verwendung einer gemeinsamen Code-Basis.

MAUI verspricht jedoch gegenüber Xamarin.Forms eine bessere Leistung, höhere Produktivität und optimierte Entwicklungsabläufe. Es basiert auf .NET 6, das über alle Plattformen hinweg eine verbesserte Leistung und mehr Funktionen bietet.

Das Framework wurde offiziell im Jahr 2022 veröffentlicht und soll Xamarin bis Mai 2024 vollständig ersetzen. Zu diesem Zeitpunkt plant Microsoft, den Support für alle Xamarin-SDKs einzustellen.

Schnelles und zuverlässiges Mobile Scanning

Demo Apps Hero v3

Integrieren Sie Barcode Scanning, Document Scanning und Data Capture innerhalb weniger Stunden in Ihre Mobil- oder Web-App

Unterschiede zwischen Xamarin.Forms und .NET MAUI

Obwohl es sich bei .NET MAUI um einen Nachfolger von Xamarin.Forms handelt, gibt es einige wichtige Unterschiede zwischen den derzeit noch nebeneinander existierenden Frameworks.

Xamarin.Forms.NET MAUI
Ein Projekt pro PlattformEin Projekt für alle Plattformen
MVVM-ArchitekturMVU-Architektur
Workarounds für den Zugriff auf native RessourcenDirekter Zugriff auf native Plattform-APIs
UWP UI (gekoppelt an Windows-Veröffentlichungen)WinUI (häufigere Updates)

Ein Projekt für alle Plattformen

Beim Einsatz von Xamarin müssen Entwickler:innen für jede Zielplattform (Android, iOS, macOS und Windows) ein eigenes Projekt erstellen. MAUI hingegen deckt mit einem Projekt alle Plattformen ab. Ressourcen wie Schriftarten und Bilddateien können nun einfach zentral abgelegt werden.

MVU statt MVVM

Model-View-Update (MVU) und Model-View-ViewModel (MVVM) beschreiben Architekturen, durch die die Präsentationslogik einer Anwendung von ihrer Geschäftslogik getrennt wird.

Während das von Xamarin.Forms verwendete MVVM bei Entwickler:innen besser etabliert ist, wird MVU immer beliebter. Grund dafür sind der simplere Aufbau und die Unveränderlichkeit von App-Zuständen. MAUI macht es Entwickler:innen durch die Verwendung von MVU leichter, neue Funktionen zu implementieren, ohne dabei mit anderen Teilen der App in Konflikt zu geraten.

Plattformspezifische APIs

Während Xamarin.Forms APIs bereitstellt, die auf allen Plattformen funktionieren, sind einige plattformspezifische APIs nicht verfügbar oder erfordern Workarounds. Mit MAUI können Entwickler:innen durch verschiedene plattformspezifischen APIs auf native Funktionen zugreifen. Dazu gehören etwa die Nutzung von Gerätesensoren, das Kopieren und Einfügen von Text in die Systemzwischenablage und das sichere Speichern von Daten in Form von Schlüssel-Wert-Paaren.

UWP vs. WinUI

Während Xamarin.Forms auf das UI-Framework UWP zurückgreift, verwendet .NET MAUI stattdessen WinUI. Letzteres ist nicht an Windows-Releases gekoppelt. Das bedeutet, dass Entwickler:innen mit MAUI auf ein generell moderneres, häufiger aktualisiertes UI-Framework zugreifen können.

Sollten Sie von Xamarin.Forms zu .NET MAUI wechseln?

MAUI muss sich noch als plattformübergreifendes Tool bewähren. Die Xamarin-Community hingegen hatte viele Jahre Zeit, sich mit dem Framework ihrer Wahl vertraut zu machen. Das macht es schwer, eine Empfehlung allein auf Grundlage der Framework-Qualität auszusprechen.

Der offizielle Support für Xamarin-SDKs wird jedoch 2024 eingestellt. Daher ist es ratsam, für neue Entwicklungsprojekte .NET MAUI einzusetzen, da eine spätere Migration des Codes eigene Probleme mit sich bringt.

Entwickler:innen bestehender Anwendungen sollten sich ebenfalls möglichst bald mit MAUI vertraut machen. Auch wenn das Ende des offiziellen Supports durch Microsoft nicht das Ende aller Xamarin-Anwendungen bedeutet, ist .NET MAUI eine zukunftssichere Option.

Unser Scanbot .NET MAUI SDK

Wir bieten Xamarin-Versionen unseres Barcode Scanner SDK, Document Scanner SDK und Data Capture SDK sowohl für iOS als auch für Android an. Als Ergänzung dazu arbeitet unser Entwicklungsteam derzeit an der Portierung unseres Codes auf .NET MAUI. Wenn es an der Zeit ist, Ihre App von Xamarin auf MAUI umzustellen, können Sie auf unser SDK zählen.

Behalten Sie unseren Blog im Auge, um über alle weiteren Entwicklungen informiert zu werden. Wir halten Sie auf dem Laufenden!

Bereit zum Ausprobieren?

Das Hinzufügen unserer kostenlosen Testversion zu Ihrer App ist ganz einfach. Laden Sie das Scanbot SDK jetzt herunter und entdecken Sie die Möglichkeiten der mobilen Datenerfassung.