Questões de Informática · ProGPe UFSCAR

InformáticaProgramação orientada a objetosProGPe UFSCAR 2012

UFSCAR

Questão de Informática

O padrão de projeto “Fábrica Abstrata” (Abstract Factory, em inglês) facilita a criação de famílias de objetos (ou produtos) relacionados entre si. Uma possível estrutura para sua implementação, mais tradicional, sugere o uso de vários “Métodos Fábrica” (Factory Method, em inglês), um para cada tipo de produto. No entanto, existe a possibilidade de uma implementação alternativa, com um único “Método Fábrica” universal para todos os tipos de produtos, onde o tipo do produto é especificado via parâmetro do método. O diagrama abaixo ilustra essa alternativa:

Figura da questão (imagem do caderno de prova)

Considerando os seguintes cenários, que são independentes entre si: I. Existem poucos produtos (três ou quatro) em cada família. II. A implementação será realizada em uma linguagem estaticamente tipada, como C++ ou Java, mas todos os tipos de produtos são suficientemente parecidos, de modo que é possível criar uma única superclasse abstrata da qual todo produto concreto é descendente. III. Existem centenas de tipos de produtos em cada família. IV. As características e o número de produtos são praticamente constantes ao longo do ciclo de vida do software. V. A implementação será realizada em uma linguagem dinamicamente tipada, como Smalltalk ou Javascript. VI. Novos tipos de produtos são adicionados frequentemente à fábrica, ao longo do ciclo de vida do software. Quais dos cenários acima (que são independentes entre si) apresentam fatos que justificam de alguma forma a escolha da alternativa descrita no diagrama, ao invés da estrutura tradicional com vários “Métodos Fábrica”?

Sua resposta

Mais questões de Programação orientada a objetos

Ver as 1.382 questões de Programação orientada a objetos

Questão de prova oficial, com o gabarito definitivo publicado pela banca. Reproduzida para fins de estudo.