Sobes.tech
Junior — Middle

Que estrutura e componentes inclui o padrão MVVM?

sobes.tech IA

Resposta da IA

O padrão MVVM (Model-View-ViewModel) divide a aplicação em três componentes principais:

  • Model — representa os dados e a lógica de negócio. É a camada que trabalha com os dados, por exemplo, modelos de base de dados ou serviços.
  • View — é responsável por exibir os dados ao utilizador. São componentes de UI que mostram informações e recebem entrada do utilizador.
  • ViewModel — intermediário entre o Model e a View. Contém a lógica de apresentação, transforma os dados do Model num formato adequado para a View e processa os comandos do utilizador.

Este tipo de separação permite melhorar a testabilidade, manutenção e reutilização do código. A View e o ViewModel geralmente ligam-se através de mecanismos de binding, o que reduz a quantidade de código para atualizar a UI.

Exemplo em C# usando WPF:

public class PersonViewModel : INotifyPropertyChanged
{
    private string name;
    public string Name
    {
        get => name;
        set
        {
            name = value;
            OnPropertyChanged();
        }
    }

    public event PropertyChangedEventHandler PropertyChanged;
    protected void OnPropertyChanged([CallerMemberName] string propName = null)
    {
        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propName));
    }
}

Aqui, o ViewModel contém a propriedade Name, que a View pode ligar para exibir e editar.