O que é?
É um padrão que serve para criarmos uma cópia de um objeto, podendo especificar-se quais atributos queremos clonar.
Estrutura:
Problema:
Criar instâncias de uma determinada classe é custoso / demorado.
Contexto:
Criar um novo automóvel, com diversos atributos, funcionalidades e passos para ser construído.
Solução:
Definir uma instância protótipo e cloná-la de acordo com a necessidade. Dessa forma, teremos um automóvel modelo, e a partir deste, criaremos novos automóveis.
Vantagens:
- Ganho de performance, pois você estará criando um objeto com um estado já definido.
- Ao definir quais atributos serão copiados, você poderá garantir que certos atributos não sejam conhecidos ou modificados.
Desvantagens:
- Mudanças no código podem se tornar um tanto quanto complexos.
- Quando estamos clonando algum objeto complexo, precisamos tomar cuidado com qual objeto estamos lidando, pois se o objeto possuir alguma conexão, por exemplo, não será interessante termos dois objetos sabendo como executar essa conexão.
Nenhum comentário:
Postar um comentário
DÚVIDAS - CRITICAS - SUGESTÕES