MVVM – O que é Model-View-ViewModel

455
Model-view-viewmodel (MVVM) é um padrão de arquitetura de software ou esquema de design de software. É uma variante do padrão Presentation Model Design de Martin Fowler.
Model-view-viewmodel (MVVM) é um padrão de arquitetura de software ou esquema de design de software. É uma variante do padrão Presentation Model Design de Martin Fowler.

Model-view-viewmodel (MVVM) é um padrão de arquitetura de software ou esquema de design de software. É uma variante do padrão “Presentation Model Design” de Martin Fowler.

O MVVM abstrai o status “view” e o comportamento. Enquanto o modelo de “apresentação” abstrai uma visão (cria um modelo de visão) de uma maneira que não depende de uma plataforma de interface de usuário específica.

O MVVM foi desenvolvido por Ken Cooper e Ted Peters da Microsoft para simplificar a programação de eventos de interfaces de usuário usando recursos do Windows Presentation Foundation (WPF) (Microsoft .NET Graphical System) e do Silverlight (Derivative Internet Application). O padrão arquitetônico foi anunciado pela primeira vez no blog John Gossman em 2005.

Model (modelo)

  • O modelo no MVVM é uma implementação do modelo de domínio do aplicativo que inclui um modelo de dados juntamente com a lógica de negócios e a lógica de validação.
  • Exemplos de objetos de modelo incluem repositórios, objetos de negócios, objetos de transferência de dados (DTOs), objetos CLR antigos e simples (pocos) e objetos gerados por entidades e proxy.

View (visão):

  • A visão é responsável por definir a estrutura, o layout e a aparência do que o usuário vê na tela.
  • Idealmente, a exibição é definida exclusivamente com XAML, com um número limitado de code-behinds que não contém lógica de negócios.

View Model:

  • O modelo de visão age como um intermediário entre a visão e o modelo, e é responsável por gerenciar a lógica da visão.
  • Geralmente, o modelo de visualização interage com o modelo invocando métodos nas classes de modelo.
  • O modelo de vista, em seguida, fornece dados do modelo em uma forma que a visão pode facilmente usar.

Binder (fichário):

  • O mecanismo fundamental para esse padrão com o qual o modelo de exibição e a exibição são constantemente sincronizados. Geralmente por meio de uma sintaxe declarativa dentro da própria exibição.
  • Isso implica que as alterações nos dados feitas pelo usuário por meio da visualização serão relatadas automaticamente no modelo de visualização. Sem esse ônus para o desenvolvedor.

Da mesma forma, quaisquer alterações feitas nos dados contidos no modelo de exibição serão representadas automaticamente na exibição.

O QUE VOCÊ ACHOU? DEIXE SUA OPINIÃO
Artigo anteriorCurso Grátis ONLINE: Linguagem de Modelagem Unificada (UML)
Próximo artigoPDF grátis: As sete dimensões do produto
Chico Alff é o nome da persona de batalha de Francilvio Roberto Alff. Paranaense apaixonado por São Paulo, possui formação em Engenharia de Software, Análise e Desenvolvimento de Sistemas para Internet, História e Língua italialana e recentemente Engenharia Civil. Frequentou os bancos acadêmicos tanto no Brasil quando na Itália, precisamente na Università degli Studi di Verona. Trabalha com  desenvolvimento de software desde 2010, tendo lançado âncora no mar da Análise de Requisitos, Análise de Negócios e Gerenciamento de Projetos, com experiência em projetos para a administração pública, sistemas de ERP, contábil e fiscal. Atualmente é Gerente de Projetos na Voraz Tecnologia e presta consultoria e análise de projetos ad hoc na Walküre Smart. Da mesma forma como um malabarista, tenta milagrosamente manter o portal AnálisedeRequisotos.com.br como prova de sua paixão pelo mundo da engenharia de software.