MVVM – O que é Model-View-ViewModel

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.

Francilvio Roberto Alff

Olá! Eu sou Francilvio Alff, mas você pode me chamar de Chico Alff. Vou fazer o m3u jabá rapidinho, eu prometo! :D Minha formação acadêmica é diversificada, com raízes em Engenharia de Software e Análise e Desenvolvimento de Sistemas para a Internet. Também mergulhei na História e na Língua Italiana em minha jornada acadêmica, embora essa aventura ainda não tenha sido concluída. Meu primeiro contato profissional e real com o incrível mundo dos sistemas foi em 2007, enquanto fazia a minha primeira graduação na Itália. Trabalhei na implantação da solução Orange Salsa para a gestão dos "informatori scientifici del farmaco" na colossal multinacional farmacêutica GlaxoSmithKline (GSK). Com o passar dos anos, me vi cada vez mais envolvido pela tecnologia, e ao longo dessas quase duas décadas, me especializei em Engenharia de Software, mais precisamente nas disciplinas de Análise de Requisitos, Análise de Negócios e Gerenciamento de Projetos. Nesse percurso, trabalhei em projetos desafiadores para a administração pública, soluções de ERP para o varejo e indústria, inteligência artificial aplicada em soluções IOT e linguagem neural.. Em 2011 fundei juntamente com um velho amigo e tutor o site https://AnalisedeRequisitos.com.br que mantenho até hoje como uma prova viva do meu comprometimento com a engenharia de software. Minha determinação e meu desejo constante de aprender continuam me impulsionando em direção ao futuro, onde pretendo continuar unindo minha paixão pela tecnologia com meu amor pela aprendizagem e minha curiosidade insaciável. Junte-se a mim nessa jornada!

PRECISAMOS DE VOCÊ!

APOIE COM QUALQUER VALOR
R$ 2,00 / R$ 5,00 / R$ 10,00 / R$ 25,00…

 

Seu apoio é fundamental! Use o PIX para fazer sua contribuição e nos ajude a manter nossa missão de compartilhar conhecimento sobre análise de requisitos e software. Sua generosidade faz a diferença!

Faça sua Doação via PIX - Apoie nossa Causa

CHAVES PIX:
[email protected]
[email protected]
Não quero ajudar!