Questão de Arquitetura de Software — MVC (Model-view-controller) — IBFC 2023
Arquitetura de Software›MVC (Model-view-controller)
Código
qq936129
Banca
IBFC
Órgão
SAEB-BA
Ano
2023
Nível
Médio
Cargo
Técnico Administrativo - Tecnologia da Informação (Desenvolvimento)
O desenvolvimento em três camadas já vem sendo aplicado há alguns anos, um dos modelos mais utilizados hoje em dia é o MVC (Model-View-Controller), sobre este modelo assinale a alternativa que apresenta qual é a responsabilidade da camada Model.
AA camada responsável por gerenciar os recursos de entrada do usuário
BA camada responsável por integrar a entrada de dados
CA camada responsável por renderizar os dados de saída para o usuário
DA camada que contém a lógica de negócios e os dados da aplicação
Revelar gabarito e comentário▾
GabaritoD — A camada que contém a lógica de negócios e os dados da aplicação
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”.
Padrão MVC – Camada Model
Gabarito: letra D. No padrão MVC (Model-View-Controller), a camada Model é responsável por encapsular a lógica de negócios e gerenciar os dados da aplicação, conforme descrito na literatura (ex.: artigo da Wikipédia sobre MVC). As demais alternativas confundem essa responsabilidade com as camadas View ou Controller.
MVC: Model (Lógica de negócios, Dados da aplicação, Interage com banco de dados, Notifica a View); View (Renderiza dados de saída, Interface com o usuário); Controller (Recebe entrada do usuário, Interpreta ações, Coordena fluxo)
Alternativa A — ❌ Incorreta
A alternativa afirma que o Model gerencia os recursos de entrada do usuário. Essa é a função do Controller, que recebe e interpreta as ações do usuário. O Model não trata diretamente da entrada.
Alternativa B — ❌ Incorreta
“Integrar a entrada de dados” é uma descrição genérica que não reflete a função do Model. O Controller é quem recebe e processa a entrada, repassando ao Model quando necessário.
Alternativa C — ❌ Incorreta
Renderizar dados de saída para o usuário é papel da View, não do Model. A View exibe as informações provenientes do Model, mas não contém a lógica de negócio.
Alternativa D — ✅ Correta ⟵ GABARITO
Exatamente: o Model contém a lógica de negócios (regras, validações, cálculos) e os dados da aplicação. Ele interage com o banco de dados e notifica a View sobre mudanças, mas não se ocupa da interface nem do fluxo de entrada.
PEGA ESSA DICA!
Para memorizar, associe Model ao “motor” da aplicação (dados + regras), View à “vitrine” (interface) e Controller ao “ponto de entrada” (recebe comandos e coordena).