Pular para o conteúdo principal

Questão de Arquitetura de Software — MVC (Model-view-controller) — FGV 2024

Arquitetura de SoftwareMVC (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
  1. AI, apenas.
  2. BI e II, apenas.
  3. CI e III, apenas.
  4. DII e III, apenas.
  5. 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.

Gabarito: letra C.

Link permanente: /questoes/fg075543