Pular para o conteúdo principal

Questão de Arquitetura de Software — Arquitetura de Software — IDCAP 2024

Arquitetura de SoftwareArquitetura de Software
Código
qg227566
Banca
IDCAP
Órgão
Prefeitura de Serra - ES
Ano
2024
Nível
Superior
Cargo
Analista em Tecnologia da Informação: Desenvolvimento
O MVC é utilizado em muitos projetos devido a arquitetura que possui, o que possibilita a divisão do projeto em camadas muito bem definidas. Nesse sentido, assinale a alternativa CORRETA:
  1. AA comunicação entre interfaces e regras de negócios é definida através de um modelo, que separa as camadas. Quando um evento é executado na interface gráfica, como um clique em um botão, a interface se comunicará com o Model, que por sua vez se comunica com as regras de negócios.
  2. BA utilização do padrão MVC traz como benefício juntar as regras de negócios da lógica de apresentação, que é a interface com o usuário.
  3. CO Model realiza a operação matemática e retorna o valor calculado para o Controller, que também é o único que possui conhecimento da existência da camada de visualização.
  4. DUma das características de um padrão de projeto é poder aplicá-lo em sistemas distintos. O padrão MVC pode ser utilizado em vários tipos de projetos como desktop e web, exceto mobile.
  5. EImagine uma aplicação financeira que realiza cálculos de diversos tipos, como os de juros. Você pode inserir valores para os cálculos e também escolher que tipo de cálculo será realizado. Isto tudo é feito pelo Controlador, que para o modelo MVC é conhecida como Controller.
Revelar gabarito e comentário

GabaritoC — O Model realiza a operação matemática e retorna o valor calculado para o Controller, que também é o único que possui conhecimento da existência da camada de visualizaçã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”.

MVC (Model-View-Controller)

Gabarito: letra C. No padrão MVC, o Controller é o intermediário que conhece tanto o Model quanto a View; o Model executa a lógica de negócio e retorna dados ao Controller, que atualiza a View. Essa é a descrição correta do fluxo e da atribuição de responsabilidades (conforme o conceito clássico do padrão).

O padrão MVC separa a aplicação em três camadas: Model (dados e regras de negócio), View (apresentação) e Controller (controle das interações). O Controlador recebe as entradas do usuário, aciona o Model e coordena a View.

1Model
Dados e regras de negócio
Executa operações
Retorna resultado ao Controller
2View
Apresentação (interface)
Não conhece o Model
Repassa ações ao Controller
3Controller
Intermediário
Conhece Model e View
Recebe entradas do usuário
Aciona o Model
Atualiza a View
MVC (Model-View-Controller)
LEVELsoulevel.com.br
MVC (Model-View-Controller): Model (Dados e regras de negócio, Executa operações, Retorna resultado ao Controller); View (Apresentação (interface), Não conhece o Model, Repassa ações ao Controller); Controller (Intermediário, Conhece Model e View, Recebe entradas do usuário, Aciona o Model, Atualiza a View)

Alternativa A — ❌ Incorreta

Afirma que a interface (View) se comunica diretamente com o Model. No MVC, a View repassa as ações do usuário ao Controller, que então interage com o Model. O Model não é chamado diretamente pela View. A descrição confunde os papéis.

Alternativa B — ❌ Incorreta

Diz que o benefício do MVC é "juntar as regras de negócios da lógica de apresentação". Na realidade, o MVC promove a separação entre essas camadas (separação de interesses). Juntar seria uma violação do padrão.

Alternativa C — ✅ Correta ⟵ GABARITO

Descreve corretamente o fluxo: o Model realiza a operação (regra de negócio) e retorna o resultado ao Controller, e o Controller é o único componente que tem conhecimento da existência da View. Isso está alinhado com a definição clássica de MVC, onde o Controlador atua como mediador e conhece as outras duas camadas, enquanto o Model e a View são independentes entre si.

Alternativa D — ❌ Incorreta

Afirma que o MVC não pode ser usado em aplicações móveis. É falso: o MVC é amplamente utilizado em mobile, por exemplo, no iOS (UIKit segue uma variação do MVC) e em frameworks como Android (embora haja variações). O padrão é aplicável a desktop, web e mobile.

Alternativa E — ❌ Incorreta

Diz que o Controller realiza os cálculos (lógica de negócio). No MVC, a lógica de negócio fica no Model; o Controller apenas recebe as entradas e delega ao Model. A função de calcular juros é do Model, não do Controller.

Gabarito: letra C.

Link permanente: /questoes/qg227566