Logo Passei Direto
Buscar

Padrao MVVM (Model-View-ViewModel)

User badge image
Dimitri Mello

em

Ferramentas de estudo

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Padrão MVVM (Model-View-ViewModel)
O que e o padrao MVVM (Model-View-ViewModel)?
a) Um padrao de design para organizar codigo-fonte em aplicacoes desktop
b) Um padrao de design arquitetural utilizado para separar a logica de negocios da interface do
usuario
c) Um modelo de comunicacao entre cliente e servidor
d) Um framework para o desenvolvimento de interfaces graficas
Resposta correta: b) O MVVM e uma abordagem arquitetural usada principalmente em aplicacoes
que possuem uma interface de usuario complexa, separando a logica de negocios (Model) da
interface (View) por meio do ViewModel.
Qual e o papel do Model no padrao MVVM?
a) Representar a interface do usuario e responder a eventos do usuario
b) Manipular a logica de negocios e as interacoes com a fonte de dados
c) Gerenciar a comunicacao entre o banco de dados e a interface de usuario
d) Exibir informacoes ao usuario sem a necessidade de logica de negocios
Resposta correta: b) O Model e responsavel pela logica de negocios, manipulacao de dados e
comunicacao com fontes externas, como bancos de dados e APIs.
O que caracteriza a View em uma aplicacao que segue o padrao MVVM?
a) Armazenar os dados de configuracao do usuario
b) Responsavel pela manipulacao da interface do usuario e sua atualizacao
c) Gerenciar a logica de negocios e a comunicacao com o banco de dados
d) Servir como intermediario entre a interface de usuario e o Model
Resposta correta: b) A View e responsavel por exibir as informacoes ao usuario e atualizar a
interface com base nas mudancas feitas pelo ViewModel.
Qual a funcao do ViewModel em uma aplicacao MVVM?
a) Servir como intermediario entre o banco de dados e a interface de usuario
b) Realizar as operacoes matematicas necessarias para a logica de negocios
c) Expor os dados do Model para a View e gerenciar a interacao entre eles
d) Controlar a navegacao entre as telas de uma aplicacao
Resposta correta: c) O ViewModel e responsavel por preparar e fornecer os dados do Model a
View, alem de lidar com a logica que nao pertence a interface do usuario.
Como o ViewModel se comunica com a View?
a) A View acessa diretamente os dados do Model e atualiza a interface
b) A View se comunica com o ViewModel por meio de comandos e binds de dados
c) A ViewModel comunica-se diretamente com a interface do usuario sem nenhuma intermediacao
d) A View somente envia eventos ao ViewModel e nao ha comunicacao direta
Resposta correta: b) No padrao MVVM, a View se comunica com o ViewModel utilizando binds de
dados e comandos, ou seja, a interface se atualiza automaticamente com base nas mudancas no
ViewModel.
Qual e a principal vantagem de utilizar o padrao MVVM em uma aplicacao?
a) Aumento do desempenho na execucao do codigo
b) Facilidade de testar a logica de negocios e de interface separadamente
c) Reducao da quantidade de codigo necessario para cada funcionalidade
d) Maior controle sobre a comunicacao entre cliente e servidor
Resposta correta: b) O MVVM facilita os testes unitarios, pois a logica de negocios no ViewModel
pode ser testada sem depender diretamente da interface de usuario.
Qual das alternativas abaixo melhor descreve a relacao entre o ViewModel e o Model?
a) O ViewModel manipula diretamente os dados no Model, alterando seu comportamento
b) O ViewModel e uma representacao do estado do Model para a View, mas nao manipula
diretamente os dados
c) O Model e uma extensao do ViewModel, armazenando as informacoes necessarias para a
interface
d) O Model e o ViewModel trabalham independentemente e nao interagem entre si
Resposta correta: b) O ViewModel expoe os dados do Model de forma adaptada a View, mas nao
deve alterar diretamente o Model. Ele age como um intermediario entre a logica de negocios e a
interface.
Qual e a funcao do Binding de dados no padrao MVVM?
a) Permitir que a View receba dados diretamente do Model sem passar pelo ViewModel
b) Estabelecer a comunicacao entre a View e o ViewModel, sincronizando os dados entre eles
c) Melhorar a performance da aplicacao, reduzindo a quantidade de codigo necessario
d) Servir como uma tecnica para otimizar o carregamento de dados do banco de dados
Resposta correta: b) O Binding de dados permite que a View seja atualizada automaticamente
quando o estado do ViewModel mudar, sem necessidade de logica explicita para manipular a
interface.
Em um cenario tipico de MVVM, qual dessas operacoes e responsabilidade do ViewModel?
a) Definir os componentes visuais da interface de usuario
b) Atualizar diretamente os dados no banco de dados
c) Gerenciar a logica que define como os dados serao apresentados na interface
d) Criar a comunicacao entre diferentes camadas da aplicacao
Resposta correta: c) O ViewModel gerencia como os dados sao apresentados, aplicando a logica
necessaria para formatar e exibir a informacao para a View.
Qual e a relacao entre o padrao MVVM e a plataforma Xamarin?
a) O MVVM e um padrao que nao pode ser utilizado no Xamarin
b) O Xamarin implementa o MVVM de forma automatica, sem a necessidade de configuracao
c) O Xamarin e uma plataforma que favorece o uso do padrao MVVM para facilitar a criacao de
interfaces multiplataforma
d) O MVVM no Xamarin e apenas opcional e nao traz beneficios concretos
Resposta correta: c) O Xamarin e uma plataforma popular para o desenvolvimento de aplicativos
moveis que favorece o uso do padrao MVVM, permitindo separar a logica de negocios da interface
para um desenvolvimento mais eficiente e organizado.
Como o padrao MVVM lida com a escalabilidade de uma aplicacao?
a) Nao oferece suporte para escalabilidade, sendo mais indicado para projetos pequenos
b) Facilita a escalabilidade, permitindo que novas funcionalidades sejam adicionadas de maneira
modular
c) Dificulta a escalabilidade, pois exige mais codigo para cada novo componente
d) A escalabilidade depende mais de outras camadas, como o banco de dados, do que do proprio
MVVM
Resposta correta: b) O MVVM ajuda na escalabilidade, pois mantem a logica de negocios separada
da interface do usuario, permitindo a adicao de novas funcionalidades sem comprometer a estrutura
do codigo.
Qual e a principal desvantagem do uso do padrao MVVM em algumas situacoes?
a) A complexidade adicional na configuracao inicial da aplicacao
b) A performance da aplicacao pode ser prejudicada pela sobrecarga do binding de dados
c) Nao ha desvantagens, pois o MVVM sempre e vantajoso em qualquer contexto
d) A arquitetura nao e adequada para pequenas aplicacoes ou prototipos rapidos
Resposta correta: b) A sobrecarga de binding de dados pode, em alguns casos, afetar a
performance, especialmente em aplicativos com grandes volumes de dados ou interfaces
complexas.
Em uma aplicacao MVVM, como deve ser feita a comunicacao entre o Model e o ViewModel?
a) O ViewModel deve manipular diretamente a interface do usuario para alterar o estado do Model
b) O ViewModel deve notificar o Model sempre que um dado precisar ser alterado
c) O Model deve notificar o ViewModel sobre todas as mudancas de dados, que devem ser
refletidas na View
d) Nao ha necessidade de comunicacao entre o Model e o ViewModel, pois eles sao independentes
Resposta correta: c) O Model notifica o ViewModel sobre mudancas de dados, que por sua vez
atualiza a View para refletir o novo estado.
Como o padrao MVVM pode melhorar a manutencao de uma aplicacao?
a) Ao reduzir o numero de testes unitarios necessarios, pois o codigo fica mais simples
b) Permitindo que a logica de negocios seja reutilizada em diferentes partes da aplicacao sem
alteracoes na interface
c) Elimina a necessidade de testes de unidade, ja que a interface e totalmente gerada
automaticamente
d) Oferecendo mais controle sobre as camadas de dados sem impactar o codigo da interface
Resposta correta: b) Como o MVVM separa a logica de negocios da interface, e mais facil modificar
ou expandir funcionalidades sem afetar a estrutura geral do aplicativo.
Qual das alternativas abaixo melhor descreve a diferencaentre o padrao MVVM e o padrao MVC
(Model-View-Controller)?
a) O MVVM permite mais flexibilidade na interacao com a interface, enquanto o MVC nao
b) No MVC, o Controller assume o papel de intermediar entre o Model e a View, enquanto no
MVVM, o ViewModel age como esse intermediario
c) O MVVM e mais indicado para aplicacoes web, enquanto o MVC e mais usado para aplicacoes
desktop
d) O MVVM permite que a View modifique diretamente o Model, algo que nao e possivel no MVC
Resposta correta: b) A principal diferenca entre MVVM e MVC esta na forma como a comunicacao
entre Model e View e mediada: no MVC, e o Controller que faz esse papel, enquanto no MVVM, o
ViewModel e o intermediario.
Como o padrao MVVM pode ser implementado em uma aplicacao Android?
a) Utilizando a arquitetura padrao do Android sem modificacoes
b) Utilizando frameworks como o Data Binding para vincular o ViewModel a View automaticamente
c) A arquitetura MVVM nao e recomendada para o Android devido a limitacoes da plataforma
d) Implementando diretamente o codigo do ViewModel na classe da Activity
Resposta correta: b)

Mais conteúdos dessa disciplina