Pular para o conteúdo principal

Questão de Engenharia de Software — Orientação a Objetos — FGV 2023

Engenharia de SoftwareOrientação a Objetos
Código
fg069583
Banca
FGV
Órgão
SEFAZ-MG
Ano
2023
Nível
Superior
Cargo
Auditor Fiscal da Receita Estadual - Tecnologia da Informação (Tarde)
Os padrões de projeto de software (design patterns) tiram proveito máximo dos pilares da orientação a objetos. Usemos como exemplo o padrão Abstract Factory, que é um padrão de projeto criacional que permite produzir famílias de objetos relacionados sem especificar suas classes concretas.O principal pilar da orientação a objetos usado nesse design pattern é
  1. Ao polimorfismo.
  2. Ba herança.
  3. Co encapsulamento.
  4. Da abstração.
  5. Ea sublevação.
Revelar gabarito e comentário

GabaritoD — a abstração.

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

Abstract Factory e os Pilares da Orientação a Objetos

Gabarito: letra D. O padrão Abstract Factory é um padrão criacional que permite produzir famílias de objetos relacionados sem especificar suas classes concretas. O principal pilar da orientação a objetos utilizado é a abstração, pois o cliente depende de interfaces abstratas (fábricas e produtos) em vez de implementações concretas.

A banca explora a compreensão de qual pilar é mais relevante para o padrão. Embora herança, polimorfismo e encapsulamento também estejam presentes (herança nos produtos concretos, polimorfismo na troca de fábricas), a essência do Abstract Factory está em abstrair a criação e fornecer um contrato genérico que desacopla o cliente do sistema.

Abstract Factory (criacional)
  • 1Essência: abstração
    • Cliente depende de interfaces
    • Fábricas e produtos abstratos
    • Desacopla implementações concretas
  • 2Pilares secundários
    • Herança (produtos concretos)
    • Polimorfismo (troca de fábricas)
    • Encapsulamento (criação escondida)
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Polimorfismo está presente (permite que o cliente trate produtos criar-se de forma genérica), mas não é o principal. O polimorfismo é uma consequência da abstração, não a razão central do padrão.

Alternativa B — ❌ Incorreta

Herança é usada para definir classes concretas de fábrica e produtos, mas o padrão enfatiza o uso de interfaces abstratas (abstração), não o reuso por herança.

Alternativa C — ❌ Incorreta

Encapsulamento é importante, mas não é o foco. O padrão encapsula a lógica de criação, mas isso é subproduto do uso de abstrações.

Alternativa D — ✅ Correta ⟵ GABARITO

Abstração é o pilar fundamental: o Abstract Factory define uma interface abstrata (ou classe) para criar famílias de objetos, e as implementações concretas são escondidas. O cliente só conhece as abstrações, o que permite variar as famílias livremente.

Alternativa E — ❌ Incorreta

Sublevação não é um pilar da orientação a objetos; é um termo inventado, incluído apenas como distrator.

Gabarito: letra D.

Link permanente: /questoes/fg069583