Histórico da Página
Painel | ||
---|---|---|
| ||
O padrão MVVM ajuda a separar claramente a lógica de negócio e apresentação de um aplicativo de sua interface de usuário (UI). Manter uma separação clara entre a lógica do aplicativo e a interface do usuário UI ajuda a resolver vários problemas de desenvolvimento e facilita o teste, a manutenção e a evolução de um aplicativo. Ela também pode melhorar significativamente as oportunidades de reutilização de código e permite que desenvolvedores e designers de interface do usuário UI colaborem mais facilmente ao desenvolver suas respectivas partes de um aplicativo. Além de entender as responsabilidades de cada componente, também é importante entender como eles interagem. Em um alto nível, a View conhece o ViewModel e o ViewModel conhece o Model, mas o Model não conhece o ViewModel e o ViewModel não conhece a View. Portanto, o ViewModel isola a View do Model e permite que o Model evolua independentemente da View. |
Painel | |||||
---|---|---|---|---|---|
| |||||
A View é responsável por definir a estrutura, layout e aparência do que o usuário vê na tela. Idealmente, cada View é definida em XAML, com um code-behind limitado que não contém a lógica de negócio. No entanto, em alguns casos, o code-behind pode conter lógica de interface do usuário que implementa um comportamento visual difícil de expressar em XAML, como animações.
|
Painel | |||||
---|---|---|---|---|---|
| |||||
O ViewModel implementa propriedades e comandos aos quais a View pode vincular dados e notifica-la de quaisquer alterações de estado por meio de eventos de notificação de alteração. As propriedades e comandos que o ViewModel fornece definem a funcionalidade a ser oferecida pela interface do usuário, mas a View determina como essa funcionalidade deve ser exibida. Embora seja possível expor a implementação real da interface ICommand no ViewModel (por exemplo, Command<T> ou RelayCommand), é recomendável expor seus comandos publicamente como ICommand. Dessa forma, se for necessário alterar a implementação posteriormente, ela poderá ser facilmente trocada.
|
Painel | ||
---|---|---|
| ||
As classes de modelo são classes não visuais que encapsulam os dados do aplicativo. Portanto, o Model pode ser pensado como a representação do modelo de domínio do aplicativo, que geralmente inclui um modelo de dados juntamente com lógica de negócio e validação. Exemplos: objetos de transferência de dados (DTOs) e Plain Old CLR Objects (POCOs). |
Painel | ||
---|---|---|
| ||
|