Uma aplicação web de serviços ao cidadão foi construída em ...

Próximas questões
Com base no mesmo assunto
Q3917576 Arquitetura de Software

Uma aplicação web de serviços ao cidadão foi construída em MVC. Em um determinado momento, um Técnico de TI começou a inserir validações e regras de cálculo na camada de apresentação para tornar a aplicação eficiente. Com base no enunciado, analise as sentenças a seguir:



I- Colocar regras de negócio na camada View tende a reduzir o acoplamento e simplificar a manutenção e testes.


PORQUE


II- A camada View é voltada à apresentação do sistema, de modo que inserir lógica de negócio aumenta a coesão e auxilia a testabilidade.



Analisadas as sentenças, assinale CORRETAMENTE:

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: D

Fundamento decisivo: O decisivo era verificar que a View, no MVC, é de apresentação; por isso, nela não cabe inserir regras de negócio, o que torna as sentenças I e II falsas.

Tema central: Separação no MVC
Análise das alternativas
A
Errada
Está errada porque depende de I e II serem verdadeiras. Pela separação de responsabilidades do MVC, a View não é a camada adequada para regras de negócio; logo, I é falsa e II também é falsa.
B
Errada
Está errada porque trata a sentença I como verdadeira. Colocar regras de negócio na View não reduz acoplamento nem simplifica manutenção e testes; ao contrário, cria dependência indevida entre apresentação e negócio.
C
Errada
Está errada porque, embora I seja falsa, II não seja verdadeira. O fato de a View ser voltada à apresentação não autoriza inserir lógica de negócio nela; isso reduz a coesão da camada e dificulta o isolamento da regra para testes.
D
Certa
A alternativa D está certa porque, no MVC, a View é voltada à apresentação. Inserir validações e cálculos de negócio nela mistura responsabilidades e compromete a separação entre interface e lógica de negócio, o que contraria a arquitetura esperada.
Pegadinha da questão
Confundir o papel de apresentação da View com regras de negócio e achar que aproximar a lógica da tela melhora coesão, testabilidade ou eficiência.
Dica para questões semelhantes
  • Em MVC, verifique primeiro se o elemento citado pertence à apresentação ou à lógica de negócio; isso costuma decidir a questão.
  • Se uma alternativa disser que mover regra de negócio para a View melhora coesão, acoplamento ou testes, confronte com a separação de responsabilidades.
  • Não use a alegação de eficiência como justificativa arquitetural para misturar apresentação com comportamento de negócio.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo