Magna Concursos
2270888 Ano: 2012
Disciplina: TI - Desenvolvimento de Sistemas
Banca: UFSCAR
Orgão: UFSCAR
Provas:

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:

Enunciado 2944667-1

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

 

Provas

Questão presente nas seguintes provas

Analista de TI

60 Questões