Wissen von A bis Z

C# / .NET MAUI

.NET MAUI ist die magische Brille, durch die Ihr Code auf jedem Gerät plötzlich wie ein Einheimischer aussieht.

.NET MAUI (Multi-platform App UI) ist das offizielle Cross-Platform-Framework von Microsoft, mit dem sich native Anwendungen für Android, iOS, macOS und Windows aus einer einzigen .NET-Codebasis entwickeln lassen. MAUI vereinheitlicht die Bedienoberfläche, Lifecycle-Modelle und Plattform-APIs hinter einer gemeinsamen Komponentenwelt aus XAML und C#, mit Zugriff auf nativ gerenderte Steuerelemente jeder Zielplattform.

Im Einsatz steht MAUI für Geschäftsanwendungen mit nativer UI, mobile Begleit-Apps zu bestehenden .NET-Backends, Windows-Apps, die zugleich auf Mac veröffentlicht werden sollen, sowie für Hybrid-Ansätze mit Blazor (BlazorWebView), bei denen Web-Komponenten in eine native Shell eingebettet werden. Build und Deployment erfolgen über das dotnet-CLI bzw. Visual Studio mit den jeweiligen Plattform-SDKs (Android SDK, Xcode-Toolchain, Windows-App-SDK).

Der Einsatzzweck und das gelöste Problem liegen in der Zentralisierung plattformspezifischer Entwicklung. Vorgänger wie Xamarin.Forms erforderten separate Projekte, Toolchains und teils inkonsistente Renderer; MAUI legt eine einheitliche Single-Project-Struktur, ein einheitliches Handler-Modell für native Steuerelemente und einen modernen Lifecycle darüber. Damit reduziert sich der Wartungsaufwand für plattformübergreifende Anwendungen, ohne die Möglichkeit zu nehmen, plattformspezifische APIs gezielt anzusprechen.

Historisch ist MAUI der direkte Nachfolger von Xamarin.Forms. Xamarin selbst entstand 2011 aus dem Mono-Projekt von Miguel de Icaza und wurde 2016 von Microsoft übernommen. Auf der Build 2020 kündigte Microsoft MAUI als Evolution von Xamarin.Forms an; mit .NET 6 (November 2021) wurde es allerdings noch verschoben und schließlich im Mai 2022 als Bestandteil von .NET 6 GA freigegeben. Mit .NET 7, 8 und 9 wurden Performance, Stabilität, Toolchain-Integration und Ressourcennutzung kontinuierlich verbessert.

Eingeführt wurde MAUI von Microsoft unter Federführung des Xamarin-Teams um David Ortinau. Der Übergang von Xamarin.Forms auf MAUI verlief in der Praxis ungewöhnlich holprig — die ursprünglich für .NET 6 GA angekündigte MAUI-Version wurde erst rund ein halbes Jahr später als stabil eingestuft. Diese Phase ist in der .NET-Community als Beispiel dafür präsent, wie schwierig es ist, eine über Jahre gewachsene Cross-Platform-Codebasis in eine moderne, einheitliche Architektur zu überführen, ohne bestehende Anwendungen zu brechen.

MAUI gehört bei bluehands zum Standard-Framework, wenn es um Mobil- oder Desktop-App geht. Wir haben hier die gesamte Entwicklung seit Xamarin mit gemacht und große Projekte umgesetzt. Mit unserer App "Stadtgeist Karlsruhe" haben wir den AppCampus Germany Award mit einem Preisgeld von 70.000€ gewonnen.

Zurück