Introdução ao MVVM Toolkit

O pacote CommunityToolkit.Mvvm (também conhecido como MVVM Toolkit, anteriormente chamado Microsoft.Toolkit.Mvvm) é uma biblioteca MVVM moderna, rápida e modular. Faz parte do .NET Community Toolkit e baseia-se nos seguintes princípios:

  • Plataforma e Tempo de Execução Independente - .NET Standard 2.0, .NET Standard 2.1 e .NET 6🚀 (Independente do UI Framework)
  • Simples de pegar e usar - Sem requisitos rigorosos sobre estrutura de aplicações ou paradigmas de programação (fora da 'MVVM'), ou seja, uso flexível.
  • À la carte - Liberdade para escolher que componentes usar.
  • Implementação de Referência - Simples e eficiente, que disponibiliza implementações de interfaces incluídas na Biblioteca de Classes Base, mas que não dispõem de tipos concretos para permitir a sua utilização direta.

O MVVM Toolkit é mantido e publicado pela Microsoft, e faz parte da Fundação .NET. Também é utilizado por várias aplicações de primeira mão integradas em Windows, como the Microsoft Store.

Este pacote destina-se a .NET Standard para poder ser usado em qualquer plataforma de aplicação: WinUI 3, UWP, WinForms, WPF, Xamarin, Uno e outras; e em qualquer runtime: .NET Native, .NET Core, .NET Framework ou Mono. Funciona em todos eles. A superfície da API é idêntica em todos os casos, tornando-a perfeita para construir bibliotecas partilhadas.

Além disso, o MVVM Toolkit também tem um alvo .NET 6, que é usado para permitir mais otimizações internas ao correr em .NET 6. A superfície pública da API é idêntica em ambos os casos, pelo que o NuGet resolve sempre a melhor versão possível do pacote sem que os consumidores tenham de se preocupar com quais APIs estarão disponíveis na sua plataforma.

Primeiros passos

Para instalar o pacote a partir do Visual Studio:

  1. No Explorador de Soluções, clique com o botão direito no projeto e selecione Gerir Pacotes NuGet. Procure CommunityToolkit.Mvvm e instale-o.

    Pacotes NuGet

  2. Adicione uma diretiva using or Imports para usar as novas APIs:

    using CommunityToolkit.Mvvm;
    
    Imports CommunityToolkit.Mvvm
    
  3. Exemplos de código estão disponíveis nas outras páginas de documentação do MVVM Toolkit e nos testes unitários do projeto.

Quando devo usar este pacote?

Use este pacote para aceder a uma coleção de tipos padrão, autónomos e leves que fornecem uma implementação inicial para construir aplicações modernas usando o padrão MVVM. Estes tipos por si só são geralmente suficientes para muitos utilizadores criarem aplicações sem necessidade de referências externas adicionais.

Os tipos incluídos são:

Este pacote pretende oferecer o máximo de flexibilidade possível, para que os programadores sejam livres de escolher quais os componentes a utilizar. Todos os tipos são frouxamente acoplados, pelo que só é necessário incluir o que utilizas. Não há necessidade de apostar "tudo" numa série específica de APIs abrangentes, nem há um conjunto de padrões obrigatórios a seguir ao construir aplicações com estes auxiliares. Combine estes blocos de construção da melhor forma que se adapte às suas necessidades.

Recursos adicionais

  • Dá uma vista de olhos à aplicação de exemplo (para múltiplos frameworks de interface) para veres o MVVM Toolkit em ação.
  • Também podes encontrar mais exemplos nos testes unitários.