Nos padrões arquiteturais, o padrão ___________ é utilizado...
Assinale a alternativa que preenche correta e respectivamente as lacunas
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: E - MVC / MVVM
Tema central da questão:
A questão aborda padrões arquiteturais de software, especialmente aqueles usados para separar camadas de apresentação e de lógica de negócios e para modularizar e distribuir responsabilidades. Compreender esses padrões é essencial para projetos de software mais organizados, reutilizáveis e fáceis de manter.
Resumo teórico:
MVC (Model-View-Controller) e MVVM (Model-View-ViewModel) são padrões de arquitetura de aplicação. O MVC separa claramente a lógica de apresentação (View) da lógica de negócios (Model), com um Controlador intermediando as interações. Já o MVVM, evoluindo do MVC, distribui a lógica de negócios em componentes independentes, como o ViewModel, promovendo escalabilidade e modularidade especialmente em interfaces ricas.
Fonte: Gamma, et al. (1995). Design Patterns; Microsoft. Patterns & Practices.
Justificativa da alternativa correta:
A primeira lacuna pede um padrão que separe apresentação da lógica de negócios: o MVC é o exemplo clássico disso. A segunda lacuna pede um padrão que distribua a lógica de negócios em componentes independentes, permitindo escalabilidade e modularidade: o MVVM faz exatamente isso, principalmente em aplicações modernas (como WPF, Angular, etc.).
Análise das alternativas incorretas:
- A - MVP / Observer: MVP (Model-View-Presenter) separa apresentação e lógica, mas Observer é um padrão comportamental, não arquitetural, e não distribui lógica de negócios em componentes independentes.
- B - Singleton / Factory: São padrões creacionais, usados para controle de instâncias, não para separação ou distribuição de lógica em arquitetura de software.
- C - Decorator / Adapter: São padrões estruturais, usados para adicionar responsabilidades a objetos (Decorator) ou adaptar interfaces (Adapter), sem relação direta com a separação ou distribuição de lógica de negócios.
- D - Proxy / Bridge: Também são estruturais, usados para controle de acesso (Proxy) ou separação de abstração e implementação (Bridge), não para os propósitos descritos no enunciado.
Dicas para interpretação:
Observe palavras-chave como separação de lógica e modularidade. Desconfie de padrões comportamentais e estruturais quando o foco é arquitetura de grandes sistemas ou aplicações. Lembre-se: padrões como MVC e MVVM sempre aparecem quando a separação de responsabilidades entre camadas é o tema.
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