Pular para o conteúdo principal

Questão de Arquitetura de Software — MVC (Model-view-controller) — SELECON 2021

Arquitetura de SoftwareMVC (Model-view-controller)
Código
qq685305
Banca
SELECON
Órgão
EMGEPRON
Ano
2021
Nível
Superior
Cargo
Analista de Sistemas (Auditoria)
A sigla MVC representa um padrão de arquitetura de aplicações que divide a aplicação em três camadas: a visão, o modelo, e o controlador, fornecendo uma maneira de dividir a funcionalidade envolvida na manutenção e apresentação dos dados de uma aplicação. Uma vantagem do uso da arquitetura MVC está indicada na seguinte opção:
  1. AExigir pouca disciplina dos desenvolvedores em relação à separação das camadas.
  2. BRequer tempo mínimo para analisar e modelar o sistema pela inexistência de erros.
  3. CPermitir o desenvolvimento, testes e manutenção de forma isolada entre as camadas.
  4. DEliminar o reuso de códigos em outros projetos, principalmente da camada de modelo.
Revelar gabarito e comentário

GabaritoC — Permitir o desenvolvimento, testes e manutenção de forma isolada entre as camadas.

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) – Vantagens

Gabarito: letra C. A principal vantagem do padrão MVC é permitir que desenvolvimento, testes e manutenção sejam realizados de forma isolada entre as camadas (Model, View, Controller), graças à separação de responsabilidades. As demais alternativas contradizem as características do padrão.

O padrão MVC foi criado para separar a lógica de negócio, a interface com o usuário e o controle das interações, promovendo independência entre as camadas. Como descrito no material de apoio: "É possível ter desenvolvimento em paralelo para o modelo, visualizador e controle pois são independentes" e "Partes da aplicação podem ser alteradas sem a necessidade de alterar outras".

Alternativa

Descrição

Veredito

Justificativa

A

Exigir pouca disciplina dos desenvolvedores em relação à separação das camadas

❌ Incorreta

O MVC exige disciplina rigorosa na separação das camadas; caso contrário, o acoplamento indesejado compromete os benefícios do padrão. É exatamente o contrário do que a alternativa propõe.

B

Requer tempo mínimo para analisar e modelar o sistema pela inexistência de erros

❌ Incorreta

O MVC exige investimento inicial de análise e modelagem (planejamento da separação das camadas) e erros podem ocorrer como em qualquer arquitetura. Não elimina a necessidade de testes e depuração.

C

Permitir o desenvolvimento, testes e manutenção de forma isolada entre as camadas

✅ Correta

Essa é uma vantagem central: como as camadas são independentes, equipes podem trabalhar em paralelo, alterações em uma camada não afetam as outras, e os testes podem ser focados em cada componente separadamente.

D

Eliminar o reuso de códigos em outros projetos, principalmente da camada de modelo

❌ Incorreta

O MVC favorece o reuso: o modelo (lógica de negócio) pode ser reutilizado em diferentes projetos e interfaces, e as views podem ser reutilizadas com diferentes controladores.

Alternativa A — ❌ Incorreta

Afirma que o MVC exige "pouca disciplina" dos desenvolvedores. Na verdade, o MVC exige disciplina rigorosa na separação das camadas; caso contrário, o acoplamento indesejado compromete os benefícios do padrão. É exatamente o contrário do que a alternativa propõe.

Alternativa B — ❌ Incorreta

Diz que o MVC "requer tempo mínimo para analisar e modelar o sistema pela inexistência de erros". Isso é falso: o MVC exige investimento inicial de análise e modelagem (planejamento da separação das camadas) e erros podem ocorrer como em qualquer arquitetura. Não elimina a necessidade de testes e depuração.

Alternativa C — ✅ Correta ⟵ GABARITO

Afirma que o MVC permite "desenvolvimento, testes e manutenção de forma isolada entre as camadas". Essa é uma vantagem central: como as camadas são independentes, equipes podem trabalhar em paralelo, alterações em uma camada não afetam as outras, e os testes podem ser focados em cada componente separadamente. O material de apoio lista explicitamente: "É possível ter desenvolvimento em paralelo para o modelo, visualizador e controle pois são independentes".

Alternativa D — ❌ Incorreta

Afirma que o MVC "elimina o reuso de códigos, principalmente da camada de modelo". Na verdade, o MVC favorece o reuso: o modelo (lógica de negócio) pode ser reutilizado em diferentes projetos e interfaces, e as views podem ser reutilizadas com diferentes controladores. O material destaca: "Facilita o reuso do código".

Gabarito: letra C.

Link permanente: /questoes/qq685305