Para melhor entender o padrão MVC (Model-ViewController) es...
Para melhor entender o padrão MVC (Model-ViewController) estuda-se as relações existentes entre seus elementos. Quanto às possíveis relações, ou associações, existentes entre os três objetos do MVC, assinale a alternativa que apresenta as afirmações abaixo que são tecnicamente verdadeiras:
I. View se associa diretamente com o objeto Controller.
II. Controller possui associação indireta com o objeto Model.
III. View se associa diretamente com o objeto Model.
IV. Model possui associação indireta com o objeto View.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é C - somente a III e IV. Vamos entender o porquê.
O padrão MVC (Model-View-Controller) é uma arquitetura de software que separa a aplicação em três componentes principais:
- Model: Responsável pela lógica de dados da aplicação. O Model encapsula os dados e as regras de negócio.
- View: Responsável pela apresentação dos dados ao usuário. A View exibe a interface gráfica e depende do Model para obter os dados a serem exibidos.
- Controller: Intermediário que recebe as entradas do usuário e as processa, atualizando o Model e alterando a View conforme necessário.
Agora, vamos analisar cada uma das afirmações:
I. View se associa diretamente com o objeto Controller.
Essa afirmação está incorreta. No padrão MVC, a View não se comunica diretamente com o Controller, mas sim com o Model.
II. Controller possui associação indireta com o objeto Model.
Essa afirmação está incorreta. No padrão MVC, o Controller interage diretamente com o Model para manipular os dados conforme as entradas do usuário.
III. View se associa diretamente com o objeto Model.
Essa afirmação está correta. A View obtém os dados diretamente do Model para exibir ao usuário.
IV. Model possui associação indireta com o objeto View.
Essa afirmação está correta. O Model não interage diretamente com a View, mas notifica mudanças que a View observa e reage a essas mudanças.
Portanto, a alternativa C - somente a III e IV - é a resposta correta. As demais alternativas não apresentam combinações de afirmações que sejam tecnicamente verdadeiras de acordo com o padrão MVC.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
"Fonte" da banca: https://pt.wikipedia.org/wiki/MVC
Ainda não tinha visto isso.
Algo parecido que estudei é que, diferentemente da arquitetura cliente-servidor em camadas - em que a comunicação é sequencial -, no MVC os componentes se comunicam entre si. Mas isso de indiretamente ligado não conheço.
https://pt.m.wikipedia.org/wiki/MVC#/media/Ficheiro%3AModelViewControllerDiagram2.svg
Um diagrama simples exemplificando a relação entre Model, View e Controller. As linhas sólidas indicam associação direta e as tracejadas indicam associação indireta.
WTF? As alternativas III e IV não se contradizem?
letra C
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo