Interview 10.01.2022, 07:54 Uhr

MAUI: Entwicklung für Android, iOS, macOS und Windows mit WinUI

.NET MAUI ist eine Cross-Platform-Entwicklungsplattform von Microsoft. Über deren Möglichkeiten und Anforderungen sprach dotnetpro mit dem Microsoft-MVP und DDC-Sprecher Mark Allibone.
(Quelle: dotnetpro)
Mark, in deiner Session auf der .NET Developer Conference 2021 ging es um Microsoft MAUI. Könntest du bitte kurz zusammenfassen, was MAUI ist und was man damit machen kann?
Mark Allibone: Das .NET Multi-platform Application UI oder kurz .NET MAUI ist eine Weiterentwicklung von Microsofts Mobile Framework Xamarin Forms. Mit .NET MAUI schreibt das Microsoft-Team die Kernarchitektur von Xamarin Forms neu, was zu schnellerer Ausführung führt und mehr Flexibilität für plattformübergreifende UI-Frameworks wie Comet ermöglicht.
.NET MAUI ist auch enger in das .NET-6-Framework integriert und ermöglicht verbesserte Möglichkeiten zum Schreiben von plattformspezifischem Code und anderen Anzeigen in der Startkonfiguration, die ASP.NET Core- und Blazor-Entwicklern bekannt vorkommen werden.
Plattformübergreifend? Gilt das auch für macOS?
Mark: In der Tat ist das ziemlich cool. Mit .NET MAUI kannst du mit Catalyst unter der Haube vollständig native Anwendungen für macOS schreiben. Du erinnerst vielleicht, dass das Team mit Xamarin offiziell nur die mobilen Plattformen Android und iOS unterstützt hat. Mit .NET MAUI hingegen wird Microsoft von Anfang an volle Unterstützung für Android, iOS, macOS und Windows mit WinUI bieten. Die neue und verbesserte MAUI-.NET-Architektur wird bei Bedarf auch die Integration neuer Plattformen ermöglichen.
Wenn es plattformübergreifend ist, dann baut es sicher auf .NET Core beziehungsweise auf .NET 6 auf?
Mark: Die Unterstützung von .NET 6 ist eine weitere Ergänzung, die mit .NET MAUI kommt. Die Teams bei Microsoft haben hervorragende Arbeit geleistet, um die plattformübergreifende Entwicklererfahrung in .NET 6 zu integrieren. Für Entwickler bedeutet dies, dass ihnen eine Menge großartiger Hilfsmittel zur Verfügung steht. Außerdem wurden mit .NET 6 die unterstützten Zielframeworks erweitert. Die Zielframeworks bieten eine vereinfachte Möglichkeit, plattformspezifischen Code oder APIs zu erstellen und zu nutzen.
Kann ich meine Anwendung dann mit Visual Studio Code entwickeln, oder sollte ich Visual Studio verwenden?
Mark: Mit .NET MAUI wird es zum ersten Mal möglich sein, Visual Studio Code für die Entwicklung der Anwendungen zu verwenden. Visual Studio Code ist bekannt für seine Leichtigkeit und einfache Erweiterbarkeit. Ich bin gespannt, wie die Entwicklung von .NET MAUI-Anwendungen mit Visual Studio Code in Zukunft aussehen wird. Visual Studio ist immer noch meine persönliche Präferenz, wenn es um das Schreiben von Code geht. Es wird einige sehr schöne Funktionen für .NET MAUI bieten. Zum Beispiel gibt es C# Hot Reload, mit dem du Änderungen an deinem Code vornehmen kannst, ohne die Debugging-Sitzung neu starten zu müssen. Auch der verbesserte XAML-Editor mit Live-Vorschau wird die Produktivität der Entwickler deutlich steigern.
Benötige ich zusätzliche Tools?
Mark: Unter Windows kannst du Android-, iOS- und Windows-Anwendungen nur durch die Installation von Visual Studio schreiben. Die Teams bei Microsoft haben hart daran gearbeitet, die Verwendung verschiedener Toolchains so einfach wie möglich zu gestalten und den Entwicklern einen Großteil der Komplexität abzunehmen.
Für manche Aufgaben sind jedoch Xcode und ein Rechner, auf dem macOS läuft, unverzichtbare Werkzeuge.
Wie kompiliere ich die fertige App und stelle sie auf den verschiedenen Plattformen bereit?
Mark: Als Entwickler kannst du ein Gerät über USB anschließen und [F5] drücken, damit deine App auf dem Gerät ausgeführt wird. Ja, das funktioniert sogar für eine iOS-App auf einem Windows-Rechner.
Wenn du eine generelle Veröffentlichung im Sinn hast, kannst du deine Plattformen für kontinuierliche Integration und Bereitstellung wie GitHub Actions und Azure DevOps verwenden und die kompilierte und signierte App dann zum Beispiel im AppCenter bereitstellen. AppCenter ermöglicht die Verteilung von internen Test-Builds. Natürlich kann man .NET MAUI-Apps auch über die offiziellen Stores für Android, iOS, macOS oder Windows vertreiben und Beta-Stores anbieten, um die App an frühe Anwender oder Tester zu verteilen.
Sobald deine App fertig ist, wirst du sie in den Apple-, Android-, macOS- oder Windows-Stores veröffentlichen wollen, wo die Nutzer die App finden und herunterladen können.
Quelle: Mark Allibone
 Mark Allibone ist Lead Mobile Engineer bei Rey Technology und ein Microsoft MVP. Er unterstützt viele namhafte Unternehmen bei ihren mobilen Ambitionen in verschiedenen Bereichen. Mit einer Leidenschaft für effiziente, plattformübergreifende Lösungen und einem Herz für den Benutzer, zielt Mark nicht nur darauf ab, funktional vollständige Apps zu entwickeln, sondern Apps, die den Benutzer befähigen.
Er ist der Co-Moderator der Null Pointers. Sie können ihn auf Twitter als @mallibone finden.


Das könnte Sie auch interessieren