Recentemente, a Microsoft liberou a sétima versão preview do .NET MAUI, e, como sempre, a comunidade de desenvolvedores está em polvorosa. Essa atualização não é só mais uma versão qualquer; ela traz melhorias significativas que podem impactar diretamente o nosso dia a dia como arquitetos de software e desenvolvedores. Vamos entender um pouco mais sobre as novidades e como elas podem ser aproveitadas na construção de aplicações multiplataforma.
Novidades da Versão 10 Preview 7
A primeira grande mudança é a compilação de XAML em tempo de construção. Agora, o XAML é processado durante a build, e não mais em tempo de execução. O que isso significa? Em resumo, a latência na inicialização do app é reduzida, erros de XAML aparecem mais cedo no fluxo de desenvolvimento e, claro, temos a possibilidade de inspecionar o código gerado. Para habilitar essa funcionalidade, basta incluir uma proprieade no seu projeto:
<PropertyGroup>
<EnablePreviewFeatures>true</EnablePreviewFeatures>
</PropertyGroup>
[assembly: XamlProcessing(XamlInflator.SourceGen)]
namespace MyApp;
Manipulação de Mídia e Metadados
Outra adição que merece destaque é o suporte à metadados EXIF ao selecionar imagens com o contrle MediaPicker. Agora, informações como orientação, timestamps e até dados de geolocalização são manejados de forma mais rica. Isso é uma mão na roda para quem precisa lidar com imagens e garantir que elas sejam apresentadas corretamente, como a rotação automática de fotos.
Layout Seguro
O conceito de Safe Area também recebeu melhorias. Essa funcionalidade é essencial para evitar que o conteúdo de um aplicativo seja exibido fora da área visível da tela do dispositivo, especialmente em dispositivos com cortes e bordas arredondadas. Agora, a lógica de layout se tornou mais inteligente e permite um controle mais fino sobre o posicionamento do conteúdo. Para utilizar, basta adicionar a propriedade SafeAreaEdges
ao seu controle de conteúdo e escolher a opção que melhor se adapta ao seu design.
public enum SafeAreaRegions
{
None = 0, // Conteúdo de borda a borda
SoftInput = 1, // Sempre pad para teclado/entrada suave
Container = 2, // Flui sob teclado, evita barras/cortes
Default = 4, // Comportamento padrão da plataforma
All = int.MaxValue // Obedece a todos os insets da área segura
}
APIs e Ferramentas Novas
Além disso, novos APIs foram introduzidas, permitindo controle programático sobre o estado de abertura e fechamento dos pickers, além de gerenciar a exibição do teclado virtual.. Isso dá aos desenvolvedores ainda mais flexibilidade na hora de criar interfaces ricas e responsivas. Contudo, vale ressaltar que algumas APIs foram deprecated, como a Accelerator
e ClickGestureRecognizer
, que foi substituída pela TapGestureRecognizer
.
Reflexões e Recomendações
Essa nova versão do .NET MAUI é um verdadeiro passo à frente na criação de aplicações multiplataforma. A possibilidade de compilar XAML em tempo de construção é um divisor de águas, sem dúvida. Se você ainda não experimentou, vale a pena investir um tempo nessa nova funcionalidade. Além disso, a manipulação de metadados e o controle do layout seguro são essenciais para atender à diversidade de dispositivos no mercado. Agora, mais do que nunca, precisamos estar atentos às mudanças e nos adaptar rapidamente.
Em suma, essa atualização não só melhora a qualidade do desenvolvimento, mas também nos encoraja a explorar novas possibilidades. A comunidade tem respondido de forma positiva, e isso é um bom sinal de que estamos no caminho certo. Então, não perca tempo, mãos à obra e vamos explorar tudo que essa nova versão tem a oferecer!