Questão nº 18

Questão de Desenvolvimento de Sistemas · FGV SEFAZ-MG 2022 - Tarde (nº 18)

FGV2022Auditor Fiscal - Tecnologia da InformaçãoDesenvolvimento de Sistemas
Gabarito: Dver comentário ↓

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 é

Resposta comentada

Gabarito Alternativa D

O padrão Abstract Factory permite criar famílias de objetos relacionados usando interfaces genéricas, sem que o código cliente precise saber os tipos exatos dos objetos que estão sendo criados.

  • (A) Incorreta: O polimorfismo é um mecanismo essencial que o Abstract Factory utiliza (por exemplo, quando diferentes fábricas concretas implementam o mesmo método de criação de forma distinta), mas não é o pilar principal que o padrão visa estabelecer. O polimorfismo é a capacidade de um objeto assumir muitas formas, e aqui ele serve para que o método criarProduto() se comporte de maneira diferente dependendo da fábrica concreta. A armadilha é que o polimorfismo é muito visível na execução do padrão, mas ele é uma consequência e um habilitador da abstração que o padrão oferece.
  • (B) Incorreta: A herança é frequentemente usada para construir as hierarquias de classes tanto para as fábricas quanto para os produtos (classes abstratas e suas implementações concretas). No entanto, herança é uma ferramenta para alcançar a abstração e o polimorfismo, não o pilar central que o Abstract Factory mais explora para seu propósito principal.
  • (C) Incorreta: O encapsulamento é sempre uma boa prática em OOP e está presente no Abstract Factory, pois ele esconde os detalhes de como os objetos são criados. Contudo, o encapsulamento é um pilar mais geral e não é o principal que define a essência e o benefício central deste padrão específico. Ele serve para proteger a implementação, mas a finalidade do padrão vai além disso.
  • (D) Correta: A abstração é o pilar principal. O Abstract Factory abstrai o processo de criação de objetos, permitindo que o código cliente trabalhe com interfaces genéricas (fábricas abstratas e produtos abstratos) em vez de classes concretas. Isso significa que o cliente não precisa se preocupar com os detalhes de implementação ou os tipos específicos dos objetos que estão sendo criados, apenas com o "que" eles representam. O nome do padrão ("Abstract Factory") já indica essa ênfase na abstração.
  • (E) Incorreta: "Sublevação" não é um pilar reconhecido da orientação a objetos.

Fonte: FGV SEFAZ-MG 2022 - Tarde Auditor Fiscal - Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho