Você está na página 1de 14

Padrões de Projeto

Prototype

Aluno: Leonardo Henrique Lima de Souza;

Data da apresentação: 03-05-2023;

1
Nome e Classificação

Padrão de projeto: Prototype;


Tipo: Criação/Criação de Objetos;
Também conhecido como: Clone.

Intenção e Objetivo: Especificar os tipos


de objetos a serem criados usando uma
instância-protótipo e criar novos objetos
pela cópia desse protótipo.
2
Estrutura

3
Exemplificação

Fonte: Blog Explicaê


4
Aplicação
● Quando as classes a instanciar forem
especificadas em tempo de execução;

Fonte: Freepik 5
Aplicação
● Quando as instâncias de uma classe
poderem ter uma dentre poucas
combinações diferentes de estados.

Fonte: Freepik 6
Exemplos de Caso de Uso
● Em jogos, para clonar Inimigos e criar
suas variantes;

Fonte: Próprio autor


7
Exemplos de Caso de Uso
● Em templates de temas em editores de
apresentações, para clonar temas e criar
variantes modificadas;

Fonte: Próprio autor

8
Exemplos de Caso de Uso
● Em um sistema de zoológico, para clonar
animais e criar suas variantes;

Fonte: Freepik
9
Consequências
Benefícios:

1. Acrescenta e remove produtos em tempo


de execução;
2. Especifica novos objetos pela variação de
valores ou variação de estrutura;
3. Reduz o número de subclasses;
4. Configura dinamicamente uma aplicação
com classes.
10
Consequências
Deficiências:

Cada subclasse de Prototype deve


implementar a operação Clone, o que pode
ser difícil. Quando uma estrutura interna
dessas classes inclui objetos que não
suportam operação de cópia ou têm
referências circulares.
11
Padrões Relacionados
Abstract Factory pode armazenar um
conjunto de protótipos a partir dos quais
podem ser clonados e retornados.

12
Padrões Relacionados

Prototype Abstract Factory

13
Referências

GAMMA, Erich; HELM, Richard; JOHNSON,


Ralph; VLISSIDES, John. Padrões de
Projeto: Soluções Reutilizáveis de
Software Orientado a Objetos. 1ª ed.
Porto Alegre: Bookman, 2000.

14

Você também pode gostar