For years, developers have been waiting for a cross-platform .NET scheme for every type of project. Well, the wait has been over this year with the announcement of .NET Multi-platform App UI (MAUI), a single-stack UI framework that supports all modern platforms: Android, iOS, macOS, and Windows.
If you are interested in the mobile app development space, you must have heard by now: Xamarin Forms is evolving into .NET Multi-platform App User Interface (MAUI). If not, then you are at the correct place! This post will tell you all about this .NET evolution and what it might mean for you.
Introducing .NET Multi-platform App UI (MAUI)
Introduced at the 2020’s Microsoft Build developer virtual conference, the .NET MAUI framework is an evolution of the Xamarin Forms toolkit for building beautiful native UIs for Windows, iOS, and Android from a single codebase. MAUI also adds MacOS support to the mix. It will also support new devices such as Microsoft Surface Duo.
The word 'evolve' here clearly says that nothing is going away! The evolution means that all UI stacks are equal, and everything will get faster, better, and easy for the developers.
MAUI is a part of Microsoft's recent efforts towards unifying the .NET platform. Why? It is currently a segmented one, intending to improve app performance and simplify multi-platform app development. The native features of each platform and UI control are within reach in a cross-platform API for the developers to provide no-compromise user experiences while sharing even more code than before.
Scott Hunter, director of program management at Microsoft, said in a post:
"With .NET 5, we begin our journey of unifying the .NET platform, bringing .NET Core and Mono/Xamarin together in one base class library (BCL) and toolchain (SDK)".
The first public preview for MAUI will happen later this year, with general availability targeted together with the release of .NET 6 (November 2021).
Key Features of .NET MAUI
- Single Project Structure
One of the amazing features. The project structure is now single source for multiple platforms, with single-click deployment.
Images, fonts, and translation files can be easily added to a single project, with native hooks set up automatically.
- Slim Renderers
In .NET MAUI, the renderers that are available right now will evolve to slim renderers. The renderers will be reengineered and built from the ground up to be more performant.
- Visual Studio Code Support
.NET MAUI will support the Visual Studio Code (VS Code). It has been an enduring wish from a lot of developers,
- Multiple Design Patterns Support
Model-View-View-Model (MVVM) and XAML are first-class features in .NET MAUI. Developers can now implement the Model-View-Update (MVU) pattern. MVU promotes a one-way flow of data and state management along with a code-first development experience, which updates the UI by applying necessary changes.
To help developers make a smooth transition of existing apps to .NET MAUI, Microsoft plans to provide ‘Try-N-Convert’ support and migration guides like what they have been offering for migrating to .NET Core.
Here’s a glance at the differences between MAUI and Xamarin.Forms:
How MAUI and Xamarin.Forms Differs from Platform Perspective:
How MAUI and Xamarin.Forms Differs from Features Perspective:
How MAUI and Xamarin.Forms Differs on Tools:
How MAUI and Xamarin.Forms Differs on Others Key Parameters:
We, at Successive Technologies, are excited to use the MAUI framework for the development of multi-platform apps. Having an experienced team of cross-platform developers and .NET, we clearly understand the uniqueness of each platform and build multi-platform apps for any business as per the requirement.