Pular para o conteúdo principal

Questão de Arquitetura de Software — Padrões de projeto (Design Patterns) — Nosso Rumo 2024

Arquitetura de SoftwarePadrões de projeto (Design Patterns)
Código
qg332257
Banca
Nosso Rumo
Órgão
IF-RO
Ano
2024
Nível
Superior
Cargo
Analista de Tecnologia da Informação
Nos padrões arquiteturais, o padrão ___________ é utilizado para separar a lógica de apresentação da lógica de negócios, promovendo a reutilização e a manutenibilidade do código. Por outro lado, o padrão ___________ é utilizado para distribuir a lógica de negócios em componentes independentes, permitindo escalabilidade e modularidade.Assinale a alternativa que preenche correta e respectivamente as lacunas
  1. AMVP / Observer
  2. BSingleton / Factory
  3. CDecorator / Adapter
  4. DProxy / Bridge
  5. EMVC / MVVM
Revelar gabarito e comentário

GabaritoE — MVC / MVVM

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”.

Padrões Arquiteturais: MVC e MVVM

Gabarito: letra E. O primeiro padrão descrito é o MVC (Model-View-Controller), que separa a lógica de apresentação (View) da lógica de negócios (Model) por meio de um Controlador, promovendo reutilização e manutenibilidade. O segundo padrão é o MVVM (Model-View-ViewModel), que distribui a lógica de negócios em componentes independentes (ViewModel), permitindo escalabilidade e modularidade, especialmente em aplicações com data-binding.

A questão cobra a identificação de dois padrões arquiteturais amplamente utilizados no desenvolvimento de software. A banca espera que o candidato conheça as finalidades principais de cada padrão, diferenciando-os de outros padrões de projeto (criacionais, estruturais ou comportamentais).

Alternativa A — ❌ Incorreta

O MVP (Model-View-Presenter) também separa apresentação da lógica de negócios, mas é mais focado em testabilidade unitária; já o Observer é um padrão comportamental (GoF) que define uma dependência um-para-muitos entre objetos, não sendo um padrão arquitetural para distribuir lógica de negócios em componentes independentes.

Alternativa B — ❌ Incorreta

Singleton é um padrão criacional que garante uma única instância de uma classe; Factory é outro padrão criacional para encapsular a criação de objetos. Nenhum dos dois é utilizado para separar apresentação de lógica de negócios ou distribuir lógica em componentes independentes como descrito.

Alternativa C — ❌ Incorreta

Decorator é um padrão estrutural que adiciona responsabilidades a objetos dinamicamente; Adapter é estrutural e permite que interfaces incompatíveis trabalhem juntas. Ambos não se aplicam à separação apresentação/negócios ou à distribuição de lógica de negócios.

Alternativa D — ❌ Incorreta

Proxy é um padrão estrutural que controla o acesso a um objeto; Bridge separa uma abstração de sua implementação. Embora Bridge possa ajudar na modularidade, não é um padrão arquitetural voltado para a separação apresentação/negócios ou distribuição de lógica de negócios em componentes independentes.

Alternativa E — ✅ Correta ⟵ GABARITO

O MVC (Model-View-Controller) é um padrão arquitetural clássico que separa a lógica de apresentação (View) da lógica de negócios (Model) por meio do Controlador. O MVVM (Model-View-ViewModel) evolui essa separação, introduzindo o ViewModel como um intermediário que expõe dados e comandos, permitindo que a lógica de negócios seja distribuída em componentes independentes, facilitando a escalabilidade e modularidade, especialmente em frameworks reativos.

Gabarito: letra E.

Link permanente: /questoes/qg332257