.NET MAUI - Adeus Xamarin Forms ???
No Microsoft Build 2020, foi anunciado o .NET MAUI (Multi-platform App UI) , e neste artigo eu vou fazer um apanhado geral sobre os principais recursos desta plataforma. |
A proposta do .NET MAUI é ser um framework para UI no .NET 6 para criação de aplicativos Windows, iOS, Android e macOS com um único projeto e base de código.
Teremos assim 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.
E ao invés de termos projetos separados para cada plataforma teremos apenas um único projeto, bastando apenas escolher em qual plataforma instalar o projeto.
Isso pode ser visto na figura abaixo:
|
Observe que algumas partes do código podem ser especializadas para a plataforma, mas está tudo no mesmo projeto com separação lógica para os recursos específicos de cada plataforma como fontes, imagens e classes de acesso a APIs, e, na hora de buildar ele pegará as partes relevantes para o projeto alvo usado no momento.
Assim, a proposta e evoluir a ferramenta, corrigir alguns erros, o que for obsoleto e os problemas de design do Xamarin Forms. Para isso e framework terá uma melhor renderização e aperfeiçoará alguns recursos como a injeção de dependência.
O .NET 6 trata da produtividade do desenvolvedor, parte dessa produtividade significa não ficar preso a nenhum padrão arquitetônico individual com o qual você possa não se sentir confortável.
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)
Nota: Existe a promessa do Hot Reload funcionando para o desenvolvimento de views com fluent C# UI.
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 e 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.
"Se o mundo vos
odeia, sabei que, primeiro do que a vós, me odiou a mim.
Se vós fôsseis do mundo, o mundo amaria o que era seu, mas porque não sois do
mundo, antes eu vos escolhi do mundo, por isso é que o mundo vos odeia."
João 15:18,19
Referências:
NET - Apresentando o padrão Model-View-ViewModel
Xamarin Forms - MVVM - Macoratti.net
NET - O padrão MVVM (Model-View-ViewModel) revisitado
Xamarin Forms - MVVM - A interface ICommand
Padrão de Projeto - Aprendendo o padrão MVVM ...