Questão de Engenharia de Software — Orientação a Objetos — FGV 2023
Engenharia de Software›Orientaçã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 é
Ao polimorfismo.
Ba herança.
Co encapsulamento.
Da abstração.
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.