Quiz sobre o Padrão de Criação Abstract Factory
Marque a alternativa que você considere correta (só não sei se vamos concordar com o que é certo ou errado) em cada uma das perguntas. Que a força esteja com você!
0
0
0
1
A intenção do padrão de criação do Abstract Factory é fornecer uma interface para criação de famílias de objetos relacionados ou dependentes, mas para isso, precisamos, obrigatoriamente, criar classes concretas?
Não
Sim
2
Em relação à aplicabilidade, o Abstract Factory deve ser configurado como um produto de uma família de múltiplos produtos, com objetos-produto e devemos garantir essa restrição ?
Não
Sim
3
Quais são as vantagens de utilizar o Abstract Factory?
Utilizamos apenas classes abstratas ou interfaces, o que diminui muito o acoplamento entre as classes do sistema, assim como podemos adicionar, modificar ou remover produtos da família de forma rápida.
Podemos utilizar classes concretas e aumentar o acoplamento entre classes de sistema sem qualquer alteração ao código que usa a classe base.
Podemos adicionar, modificar ou remover produtos da família de forma rápida sem qualquer alteração no código-base
4
O nome Abstract Factory (ou fábrica) é assim chamado por que?
É a localização de uma classe concreta onde novos tipos derivados devem ser introduzidas sem qualquer alteração ao código que usa a classe base.
É a localização de uma classe abstrata no código em que devemos redefinir a cada implementação
É a localização de uma classe concreta no código em que objetos são construídos
5
Quais as desvantagens do uso do Abstract Factory?
A adição ou remoção de famílias exige a modificação da Abstract Factory, o que causa um grande overhead, pois deve-se modificar todas as implementações da Factory e o cliente que usa a Abstract Factory.
A adição ou remoção de famílias exige a modificação da Abstract Factory mas não precisamos interferir em todas as implementações tornando o sistema cada vez mais lento
A adição ou remoção de famílias não exige a modificação da Abstract Factory, o que causa um grande overhead, pois devemos modificar as classes concretas de objetos, causando lentidão