Questão de Arquitetura de Software — MVC (Model-view-controller) — FGV 2024
Arquitetura de Software›MVC (Model-view-controller)
Código
fg075543
Banca
FGV
Órgão
AL-SC
Ano
2024
Nível
Superior
Cargo
Analista Legislativo III - Analista de Sistemas
O MVC (Model-View-Controller) é um padrão de arquitetura de software.Com relação ao Padrão MVC, analise os itens a seguir.I. No MVC, estão presentes três componentes: Model, que representam o negócio; View, que responde pela interface que será apresentada; e, Controller, que integra os componentes model e view, fazendo com que os models possam ser repassados para as views e vice-versa.II. A semântica do MVC envolve um model, vários componentes Controller e apenas uma única View.III. O Model encapsula o estado do aplicativo e a funcionalidade principal do negócio.Está correto o que se afirma em
AI, apenas.
BI e II, apenas.
CI e III, apenas.
DII e III, apenas.
EI, II e III apenas.
Revelar gabarito e comentário▾
GabaritoC — I e III, apenas.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
MVC (Model-View-Controller)
Gabarito: letra C. Apenas os itens I e III estão corretos. O item I descreve corretamente os três componentes do MVC (Model, View, Controller) e suas responsabilidades básicas. O item III afirma corretamente que o Model encapsula o estado e a funcionalidade principal do negócio. O item II, no entanto, erra ao afirmar que a semântica do MVC envolve "vários componentes Controller e apenas uma única View" — na verdade, o padrão permite múltiplas Views para um mesmo Model (diferentes apresentações dos dados), e a quantidade de Controllers pode variar, mas não há essa restrição.
A base do padrão MVC é a separação em três camadas interconectadas, conforme descrito na literatura:
Model é a ponte entre as camadas Visão e Controle, consiste na parte lógica da aplicação, que gerencia o comportamento dos dados através de regras de negócios, lógica e funções. (Wikipédia) View pode ser qualquer saída de representação dos dados, como uma tabela ou um diagrama. (Wikipédia) Controller faz a mediação da entrada e saída, comandando a visão e o modelo para serem alterados de forma apropriada conforme o usuário solicitou. (Wikipédia)
Item
Afirmação
Análise
Correto?
I
Três componentes: Model (negócio), View (interface), Controller (integra Model e View)
Descrição clássica do MVC, conforme literatura
✅
II
Semântica: um Model, vários Controllers, apenas uma View
Na verdade, permite múltiplas Views para um mesmo Model; a relação descrita está invertida
❌
III
Model encapsula estado e funcionalidade principal do negócio
Definição correta do papel do Model
✅
MVC
1Componentes
Model
Estado e regras de negócio
View
Interface de apresentação
Controller
Mediação entrada/saída
2Relações
Model ↔ múltiplas Views
Controller coordena Model e View
LEVEL · soulevel.com.br
Item I — ✅ Correto
O item afirma que o MVC possui três componentes: Model (negócio), View (interface) e Controller (integra Model e View, permitindo repasse entre eles). Isso está em linha com a definição clássica, onde o Controller recebe as ações do usuário e coordena as atualizações do Model e da View. O texto de apoio confirma que o Controller "faz a mediação da entrada e saída".
Item II — ❌ Incorreto
A semântica do MVC não é de múltiplos Controllers e uma única View. O padrão permite que um mesmo Model tenha várias Views associadas (ex.: gráfico e tabela representando os mesmos dados). Os Controllers podem ser um ou mais, mas a afirmação inverte a relação típica. A literatura destaca que "é possível ter várias visões do mesmo dado" (Wikipédia). Portanto, o item está errado.
Item III — ✅ Correto
O Model encapsula o estado (dados) e a funcionalidade principal (regras de negócio). O texto de apoio afirma que o Model é "o coração da execução, responsável por tudo que a aplicação vai fazer" e "modela os dados e o comportamento por trás do processo de negócios". A descrição está correta.
Conclusão: estão corretos apenas os itens I e III, correspondendo à alternativa C.