O MVC é utilizado em muitos projetos devido a arquitetura q...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Vamos analisar a questão sobre o padrão MVC (Model-View-Controller), um dos mais utilizados em arquiteturas de software, especialmente em projetos que demandam uma clara separação entre a lógica de negócios e a interface do usuário.
O MVC é um padrão de projeto que divide a aplicação em três componentes inter-relacionados:
- Model: Responsável pelos dados e pela lógica de negócios. Ele gerencia o comportamento e os dados do aplicativo, responde a solicitações para informações e responde a instruções para mudar o estado.
- View: Trata da apresentação dos dados. É a interface do usuário, responsável por apresentar os dados ao usuário e encaminhar comandos ao Controller.
- Controller: Interage com o Model e a View. Ele recebe as entradas do usuário, processa-as com o auxílio do Model e atualiza a View conforme necessário.
Agora, vamos analisar a questão:
Alternativa C é a correta. Ela afirma que o Model realiza operações e retorna o valor calculado para o Controller, que possui conhecimento da camada de visualização. Isso está correto, pois o Controller é responsável por realizar a comunicação entre o Model e a View, coordenando as ações e a atualização da interface.
Vamos examinar por que as outras alternativas estão incorretas:
- Alternativa A: Incorreta. Ela descreve que a interface se comunicaria diretamente com o Model, mas na arquitetura MVC, a View se comunica com o Controller e não diretamente com o Model.
- Alternativa B: Incorreta. Afirma que o MVC junta as regras de negócios com a lógica de apresentação, mas na realidade o MVC separa essas responsabilidades.
- Alternativa D: Incorreta. O MVC pode ser utilizado em projetos desktop, web e mobile, portanto, a afirmação de que não é aplicável em mobile é errada.
- Alternativa E: Incorreta. Ela atribui ao Controller a responsabilidade de realizar cálculos, o que na verdade é papel do Model. O Controller deve orquestrar as operações e interações entre View e Model.
Ao responder questões sobre MVC, lembre-se de focar na clara separação de responsabilidades entre Model, View e Controller. Essa divisão facilita a manutenção e escalabilidade do sistema.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
No meu entendimento, a letra E) seria a mais correta.
Na letra C) diz que o controller é o único que conhece a existência view, está errado, o model pode ter conhecimento sobre a existência da view via observer.
O que vocês acham?
A - A 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.
Errado - Quem faz essa ponte entre a interface e a regra de negócio é o Controller.
B - A 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.
Errado - É exatamente o oposto. O padrão MVC tem como objetivo separar a regra de negócio da lógica de apresentação
C - 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.
Certo - O Model é de fato responsável por conter a lógica de negócios, o que inclui a realização de operações matemáticas e o gerenciamento dos dados. Realmente no padrão MVC o Model não tem conhecimento da View.
D - Uma 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.
Errado - O padrão de projeto MVC (Model-View-Controller) é amplamente utilizado em diversos tipos de sistemas, incluindo desktop, web e, sim, mobile.
E - Imagine 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.
Errado - A realização dos cálculos (como os de juros) e a lógica de negócios (como a forma de calcular juros simples ou compostos) são responsabilidades do Model. O Model lida com os dados e as regras de negócios da aplicação, enquanto o Controller atua como um intermediário, traduzindo as interações do usuário em ações do Model e atualizações na View.
Desistir dos seus sonhos não é uma opção.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo