Mind map
Fábrica Abstrata
Map content
Fábrica Abstrata
Prove uma interface para criar uma família de objetos sem especificar a classe concreta
- Dessa forma, se todos os objetos relacionados forem obtidos a partir da mesma fábrica, não haverá inconsistência entre eles.
Aplicabilidade
- Um sistema deve ser independente de como seus produtos são criados, compostos ou representados;
- Uma família de objetos for projetada para ser usada em conjunto, e você necessita garantir esta restrição;
- Você quer fornecer uma biblioteca de classes e quer revelar somente suas interfaces, não suas implementações.
Ele isola as classes concretas
- O padrão Abstract Factory ajuda a controlar as classes de objetos criadas por uma aplicação. Uma vez que a fábrica encapsula a responsabilidade e o processo de criar objetos-produto, isola os clientes das classes de implementação.
- Os clientes manipulam as instâncias através das suas interfaces abstratas. Nomes de classes-produto ficam isolados na implementação da fábrica concreta; eles não aparecem no código do cliente.
Ele torna fácil a troca de famílias de produtos.
- A classe de uma fábrica concreta aparece apenas uma vez numa aplicação – isto é, quando é instanciada. Isso torna fácil mudar a fábrica concreta que uma aplicação usa.
- Ela pode usar diferentes configurações de produtos simplesmente trocando a fábrica concreta. Uma vez que a fábrica abstrata cria uma família completa de produtos, toda família de produtos muda de uma só vez.
Ele promove a harmonia entre produtos
- Quando objetos-produto numa família são projetados para trabalharem juntos, é importante que uma aplicação use objetos de somente uma família de cada vez. AbstractFactory torna fácil assegurar isso.
É difícil de suportar novos tipos de produtos
- Estender fábricas abstratas para produzir novos tipos de Produtos não é fácil. Isso se deve ao fato de que a interface de AbstractFactory fixa o conjunto de produtos que podem ser criados.
Information
- Description
- Mind Map on Fábrica Abstrata, created by Jardielma Queiroz de Lima on 01/04/2019.
- Created by
- Jardielma Queiroz de Lima
- Views
- 0
- Rating