O post .NET MAUI (Multi-platform App UI) tem como objetivo apresentar o novo framework para construção de UI, evolução do Xamarin.Forms, anunciado no Microsoft Build 2020.
.NET MAUI
O .NET MAUI tem como proposta ser um framework open-source capaz de criar um projeto para Android e iOS com uma única interface e também criar aplicativos desktop para Windows e MacOS.
Nos projetos Xamarin.Forms você possui um projeto que contém o código compartilhado Xamarin.Forms, um projeto Xamarin.iOS para a plataforma iOS e um projeto Xamarin.Android para a plataforma Android.
Com .NET MAUI você terá apenas um projeto e separação lógica para os recursos específicos de cada plataforma como fontes, imagens e classes de acesso a APIs.
Além de ganhar tempo sem precisar trocar de projeto para execução, o .NET MAUI saberá separar os recursos das plataformas quando você fizer o deploy para uma plataforma específica. Recursos como Android App Bundle ainda estarão disponíveis.
Um novo padrão: MVU
Os desenvolvedores em .NET MAUI podem escolher usar o padrão de arquitetura MVVM tradicionalmente aceito para escrever interfaces de usuário multiplataforma ou o padrão MVU (Model-View-Update), que é uma experiência de interface de usuário code-first e pode desenvolver suas views usando a fluente C# UI (C# for Markup)
O .NET MAUI, vai usar os mesmos controles XAML usado no Xamarin Forms e Microsoft pretende tornar o processo de migração do Xamarin.Forms para MAUI o mais fácil possível fornecendo guias de migração, bem como ferramentas para converter seus projetos existentes.
Mas o que vai acontecer com o Xamarin ?
As tecnologias nativas Xamarin (Xamarin.iOS, Xamarin.Android) são vinculações com as tecnologias de plataforma nativas oferecidas pelos fornecedores de sistemas operacionais. Este conceito é fundamental para Xamarin.Forms e .NET MAUI. Assim essas tecnologias continuarão existindo, mas serão incorporadas ao .NET 6 como cidadãos de primeira classe.
Após o lançamento do .NET 6, a equipe do Xamarin lançará as versões finais dos SDKs do Xamarin como existem hoje e continuará atendendo esses SDKs e Xamarin.Forms por um ano.
Depois disso, o suporte será totalmente mudado para .NET MAUI, .NET para Android e .NET para iOS e as versões do .NET MAUI serão distribuídas com as versões da plataforma .NET.
Confira abaixo a tabela com as diferenças entre o Xamarin Forms e o MAUI :
A previsão é fazer o lançamento do .NET MAUI junto com o .NET 6 em novembro de 2021, havendo previews das versões antes do lançamento oficial.
Se quiser conferir e acompanhar o desenvolvimento do .NET MAUI acesse : https://github.com/dotnet/maui.