Questão de Arquitetura de Software — MVC (Model-view-controller) — FGV 2024
Arquitetura de Software›MVC (Model-view-controller)
Código
fg084699
Banca
FGV
Órgão
EPE
Ano
2024
Nível
Superior
Cargo
Analista de Gestão Corporativa - Tecnologia da Informação (Soluções)
A arquitetura MVC (Model-View-Controller) sugere a divisão de aplicações em três principais grupos de componentes: Models, Views e Controllers, o que ajuda a atingir a separação de interesses.Em relação aos Controllers, analise as afirmativas a seguir e assinale (V) para a verdadeira e (F) para a falsa.( ) Atua como ponto de entrada inicial, sendo responsável por escolher os Models que serão empregados na execução bem como qual View será renderizada.( ) Caso a lógica do Controller esteja muito complexa, é recomendável mover lógica de negócios para fora do mesmo, insira-a no modelo de domínio, por exemplo.( ) Caso um Controller execute com frequência os mesmos tipos de ações, é uma boa prática mover essas ações comuns para filtros.As afirmativas são, respectivamente
AV – F – V.
BV – V – F.
CF – V – F.
DF – F – V.
EV – V – V.
Revelar gabarito e comentário▾
GabaritoE — V – V – V.
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 – Papel dos Controllers
Gabarito: letra E – sequência V – V – V. Todas as três afirmativas estão de acordo com as responsabilidades e boas práticas do Controller no padrão MVC: ele é o ponto de entrada que seleciona Models e Views; deve-se manter a lógica de negócio no Model, evitando Controllers inchados; e ações repetitivas devem ser extraídas para filtros, promovendo reuso.
Conforme o texto de apoio, o Controller "faz a mediação da entrada e saída, comandando a visão e o modelo" e "envia comandos para o modelo para atualizar o seu estado". Já o Model é "a parte lógica da aplicação, que gerencia o comportamento dos dados através de regras de negócios". A prática de mover ações comuns para filtros é adotada por frameworks MVC (como Rails, ASP.NET MVC) para evitar duplicação.
Controller (MVC)
1Papel
Ponto de entrada
Seleciona Models
Seleciona Views
2Boas práticas
Lógica complexa → Model (domínio)
Ações repetitivas → Filtros
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma 1ª V, 2ª F, 3ª V. A 2ª afirmativa, porém, é verdadeira: recomenda-se sim mover lógica de negócios complexa para o Model, mantendo o Controller enxuto. Logo, a sequência não corresponde ao padrão correto.
Alternativa B — ❌ Incorreta
Afirma 1ª V, 2ª V, 3ª F. A 3ª afirmativa é verdadeira: ações repetitivas do Controller devem ser movidas para filtros (ex.: before/after actions). Portanto, a sequência está errada.
Alternativa C — ❌ Incorreta
Afirma 1ª F, 2ª V, 3ª F. A 1ª afirmativa é verdadeira: o Controller é o ponto de entrada e escolhe Models e Views. A 3ª também é verdadeira. A sequência possui duas falsas onde deveriam ser verdadeiras.
Alternativa D — ❌ Incorreta
Afirma 1ª F, 2ª F, 3ª V. As duas primeiras afirmativas são verdadeiras (1ª V, 2ª V), não falsas. Apenas a 3ª está correta, mas a alternativa erra ao marcar as duas primeiras como F.
Alternativa E — ✅ Correta ⟵ GABARITO
Sequência V – V – V. A 1ª afirmativa descreve corretamente o papel do Controller como ponto de entrada e coordenador. A 2ª reflete a boa prática de manter a lógica de negócio no Model. A 3ª recomenda o uso de filtros para ações repetitivas, princípio comum em frameworks MVC. Todas estão verdadeiras, conforme o gabarito oficial.