1. Was ist .NET MAUI?

  • .NET MAUI (Multi-platform App UI) ist ein modernes, von Microsoft entwickeltes Cross-Platform-Framework.
  • Ermöglicht mit einer gemeinsamen Codebasis Apps für Android, iOS, macOS und Windows zu erstellen.
  • Verwendung von C# und XAML zum Entwickeln von UI und Geschäftslogik.
  • Das Framework abstrahiert viele plattformspezifische Unterschiede und bietet einheitliche APIs für plattformübergreifende Funktionen.
  • Kompiliert die App am Ende trotzdem immer in native Assemblies auf der Zielplattform.

2. Was bedeutet .NET „Native“?

  • Native Entwicklung bezeichnet die Entwicklung direkt für eine Zielplattform. Beispielsweise:
    • Für Android erhält man eine App, die mit Android-spezifischen APIs und SDKs geschrieben ist.
    • Für Windows verwendet man etwa WinUI, WPF oder UWP.
    • Für iOS/macOS verwendet man direkt Xamarin.iOS oder native Apple-Technologien (Swift/Obj-C).
  • .NET Native war auch der Name eines früheren Ahead-of-Time-Compilers für Windows-Apps, wird aber oft allgemein als Bezeichnung für „direkt mit .NET und nativen APIs“ verwendet.
  • Hier wird das vollständige UI und die Logik explizit für eine Plattform gebaut, was vollen Zugriff auf alle nativen Funktionen und eine hohe Performance bietet.

3. Die wichtigsten Unterschiede im Vergleich

Feature.NET MAUI.NET Native (native Entwicklung)
PlattformenMulti-Plattform (Android/iOS/macOS/Win)Je eine App pro Plattform
CodebasisEine gemeinsame CodebasisSeparate Projekte, plattformspezifisches Coding
User InterfaceAbstraktionen & Cross-Plattform-UI-ControlsVolle Kontrolle, direkter Zugriff auf native UI-Controls
PerformanceSehr gut, aber oft geringfügige AbstraktionsverlusteMaximale Performance, vollständige Optimierung möglich
Plattform-APIsGemeinsame und spezielle Schnittstellen über MAUI-APIsDirekter und vollständiger Zugriff auf alle nativen APIs
WartbarkeitHöhere Wartbarkeit, weniger doppelter CodeMeist doppelter Code und höherer Pflegeaufwand
Typische NutzungGeschäftsanwendungen, die auf mehreren Plattformen laufen sollenHoch-spezialisierte, performance-kritische Apps

4. Vorteile und Grenzen

  • .NET MAUI Vorteile:
    • Entwicklungsaufwand und Maintenance sinken, da “one codebase, many platforms” möglich ist.
    • Moderne Tools, Hot Reload, umfangreiche UI-Komponenten.
    • Für die meisten Business-Apps sind kleine Performance-Nachteile oft irrelevant.
  • .NET Native Vorteile:
    • Volle Flexibilität & Plattformkontrolle.
    • Optimale Hardwareausnutzung und kürzere Latenzen.
    • Empfehlenswert für Apps mit speziellen UI/UX-Anforderungen oder maximaler Performance (z.B. Spiele, Echtzeit-Anwendungen).
  • Grenzen: MAUI abstrahiert viel, was in manchen Randfällen Performance kosten kann. Native Development verlangt mehr Expertenwissen für jede Plattform und bedeutet oft mehr Entwicklungsaufwand.

Fazit

  • .NET MAUI ist die beste Wahl für cross-platform Anwendungen mit geteiltem Code, bei überschaubarem Mehraufwand und mit sehr guter, aber nicht immer maximaler, nativer Performance.
  • .NET Native empfiehlt sich, wenn man aus jeder Plattform das Maximum holen will oder komplexe, plattformspezifische Features nutzen muss.

Ein Entwickler wählt .NET MAUI für schnellere Entwicklung und Codewiederverwendung – und .NET Native, wenn absolute Kontrolle und optimale Performance entscheidend sind