Explorando os recursos e a compatibilidade multiplataforma do .NET MAUI
Criar aplicativos multiplataforma é uma habilidade fundamental para desenvolvedores modernos, e compreender as estruturas básicas subjacentes do projeto é essencial. Este artigo, inspirado no vídeo de Tim Corey sobre " .NET MAUI First Look - O que é, como usar e está pronto? ", explora as complexidades da criação de aplicativos multiplataforma usando o framework .NET MAUI .
O .NET Framework oferece suporte à criação e execução de aplicativos .NET especificamente para Windows, fornecendo um ambiente robusto para aplicativos de desktop, web e servidor. Em contrapartida, o .NET MAUI estende essa capacidade ao desenvolvimento multiplataforma usando a implementação .NET , permitindo criar aplicativos que funcionam no Windows, Android e iOS com uma base de código unificada.
Seguindo as dicas de Tim, exploraremos como configurar e otimizar essa estrutura de desenvolvimento de software, utilizando todo o potencial do .NET MAUI para criar aplicativos móveis e de desktop eficientes e de fácil manutenção.
Introdução ao .NET MAUI
O .NET MAUI é um framework multiplataforma de ponta dentro do ecossistema .NET , que permite aos desenvolvedores criar aplicativos para Android, iOS, macOS e Windows usando código gerenciado. Ele aproveita a biblioteca de classes abrangente do .NET Framework e o Common Language Runtime (CLR) para um desempenho eficiente em diferentes sistemas operacionais.
A arquitetura modular e otimizada do .NET MAUI oferece suporte a várias linguagens de programação, incluindo C# e Visual Basic. Integrado perfeitamente ao Visual Studio, garante um desenvolvimento .NET eficiente, com o suporte da .NET Foundation e de uma comunidade ativa de desenvolvedores .NET .
Essa estrutura representa o futuro do desenvolvimento .NET , oferecendo compatibilidade multiplataforma para aplicativos web, desktop e móveis. Com sua capacidade de compilar código .NET em código de máquina e suporte para frameworks de modelos de aplicativos como WPF e Windows Forms, o .NET MAUI é uma ferramenta versátil e poderosa para desenvolvedores de aplicativos .NET modernos.
Entendendo o .NET MAUI e seus componentes
Tim também apresenta uma visão geral do .NET MAUI, explicando que significa Multi-Application User Interface (Interface de Usuário Multiaplicativo), permitindo que aplicativos sejam executados em várias plataformas, incluindo Android, iOS, macOS, Windows e Tizen, todos programados em uma única linguagem de programação. No entanto, o Linux não é suportado atualmente. Ele detalha o papel sucessor do .NET MAUI em relação ao Xamarin e como ele consolida diferentes versões do .NET Core e do .NET Framework no .NET 6.
Configurando o .NET MAUI no Visual Studio
Tim demonstra como configurar um projeto .NET MAUI usando a versão de pré-visualização do Visual Studio, já que o .NET MAUI ainda não havia sido lançado na época da gravação do vídeo. Ele destaca as pequenas diferenças na versão de pré-visualização e menciona a estabilidade dos componentes da versão candidata a lançamento.
Criando um novo projeto .NET MAUI
Para começar, Tim Corey demonstra como configurar um novo projeto .NET MAUI . Aqui estão os passos descritos em seu vídeo:
-
Abra o Visual Studio: Comece abrindo o Visual Studio e selecionando a opção para criar um novo projeto.
-
Escolha o modelo MAUI: Nos modelos de projeto, selecione "Aplicativo .NET MAUI ", "Aplicativo .NET MAUI Blazor " ou "Biblioteca de Classes .NET MAUI " e clique em "Avançar". Tim usa o Aplicativo .NET MAUI .

-
Configurar as definições do projeto: Insira o nome do projeto, escolha a localização e o nome da solução.

- Criar o projeto: Clique em "Criar" para gerar o projeto com as configurações padrão e o código necessário.
Essa configuração fornece uma base para explorar o desenvolvimento multiplataforma, com o Visual Studio gerando uma estrutura básica que inclui componentes essenciais como MauiProgram.cs, pastas específicas da plataforma e recursos compartilhados.
Analisando a estrutura do projeto e o código .NET MAUI
Tim explora a estrutura do projeto, apontando semelhanças com projetos WPF e WinUI.
Familiaridade com XAML
Tim destaca que o .NET MAUI usa XAML para design, semelhante aos projetos WPF e WinUI.
Estrutura do Projeto
Tim explica a estrutura de MauiProgram.cs, observando que inclui o uso de uma classe estática MyProgram com um ponto de entrada CreateMauiApp. Isso é semelhante a outros projetos .NET , com configurações para fontes, injeção de dependência e registro de logs.
Estruturas-alvo
O projeto tem como alvo várias estruturas: .NET 6 para Android, iOS, macOS (Catalyst) e Windows. É compatível com Windows 10 (versão 19041 e superior) e Windows 11.
Construções e plataformas condicionais
Tim explica o uso de instruções condicionais no arquivo de projeto para lidar com várias estruturas, separadas por ponto e vírgula. Isso permite direcionar plataformas específicas e gerenciar dependências específicas de cada plataforma.
Código específico da plataforma
Pastas para cada plataforma (Android, iOS, macOS, Tizen, Windows) gerenciam o código específico da plataforma. Os desenvolvedores podem excluir plataformas removendo os respectivos destinos e pastas do arquivo de projeto.
Processo de construção e abstração
O .NET MAUI abstrai grande parte do trabalho específico da plataforma, compilando o código para usar as APIs de cada plataforma. Isso garante uma aparência e funcionalidade nativas para cada plataforma.
Configuração e ativos
Tim aborda arquivos de configuração como AndroidManifest.xml e Info.plist para iOS, que lidam com configurações específicas da plataforma. Ferramentas de interface gráfica estão disponíveis para facilitar a edição desses arquivos, especialmente no iOS.
Explorando recursos específicos da plataforma
Tim destaca a importância dos recursos específicos da plataforma e como o .NET MAUI os gerencia. Ele discute a pasta "Plataformas", que contém subpastas para cada plataforma suportada, incluindo código específico para cada plataforma.
Arquivos de projeto compartilhados
Tim então explora a estrutura de projeto compartilhada, explicando como o código compartilhado é escrito uma única vez e executado em múltiplas plataformas. Ele ilustra isso examinando os arquivos MainPage.xaml e MainPage.xaml.cs, mostrando como o XAML é usado para a interface do usuário e o C# para o código subjacente.
Executando aplicativos em múltiplas plataformas
Testar aplicações .NET MAUI em múltiplas plataformas é essencial para avaliar o desempenho e a aparência. Tim enfatiza a importância de testar em um computador com Windows, um emulador de Android e em dispositivos iOS com uma conta de desenvolvedor da Apple.
Configurando ambientes de desenvolvimento
Tim explica a necessidade de configurações diferentes dependendo da plataforma. Para Android, instale emuladores de Android. Para iOS, é necessária uma conta de desenvolvedor da Apple, que custa aproximadamente US$ 100 por ano.
Habilitando o Modo de Desenvolvedor para Windows
Ativar o modo de desenvolvedor no Windows é essencial para testar aplicativos .NET MAUI , permitindo a instalação de aplicativos por meio de sideload sem a Microsoft Store.

Testando no Windows
Tim demonstra como testar um aplicativo .NET MAUI em uma máquina Windows, utilizando o recurso de recarregamento a quente para fazer alterações no código do aplicativo e ver as atualizações em tempo real.

Testando no emulador do Android
Tim usa o emulador Galaxy Nexus com Android 12 para realizar os testes, explicando o processo de iniciar o emulador, instalar e executar o aplicativo.

Comparação das versões do Windows e do Android
Tim compara o aplicativo em ambas as plataformas, observando a consistência da funcionalidade apesar das diferenças de aparência.

O futuro do .NET MAUI e do Xamarin
O .NET MAUI tem suporte completo da Microsoft e espera-se que receba melhorias contínuas. Como sucessor, o Xamarin pode atualizar projetos para o .NET MAUI, garantindo uma transição tranquila para os desenvolvedores.
Conclusão
Tim Corey oferece uma visão geral abrangente do .NET MAUI, sua configuração e recursos. Seu vídeo é um recurso valioso para desenvolvedores interessados em explorar essa estrutura. Para análises mais aprofundadas e exemplos práticos de programação, visite o canal dele no YouTube , IAmTimCorey , e confira mais recursos disponíveis em iamtimcorey.com .


