Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Projeto de Sistemas de Software
Padrões de Projeto: Prototype Equipe: Bruno Silva de Carvalho
2
Prototype Propósito do padrão:
Especificar os tipos de objetos a serem criados usando uma instância protótipo e criar novos objetos pela cópia deste protótipo.
3
Prototype Motivação: Role-playing game; Aplicativos gráficos; Outros.
4
Prototype Aplicabilidade:
Quando o sistema não depende de como seus objetos são criados; Quando as classes a instanciar são especificadas em tempo de execução; Quando é mais conveniente instalar um número de protótipos e cloná-los do que instanciar manualmente um em cada estado.
5
Prototype Estrutura:
6
Prototype Participantes: Prototype;
Declara uma interface para clonar a si próprio. ConcretePrototype; Implementa uma operação para clonar a si próprio. Client. Cria um novo objeto solicitando a um protótipo que clone a si próprio.
7
Prototype Colaborações:
Um cliente solicita a um protótipo que este clone a si próprio.
8
Prototype Conseqüências:
Acrescenta e remove produtos em tempo de execução; Especifica objetos novos pela variação de valores; Reduz o número de subclasses; Obriga cada subclasse de Prototype implementar o método clone.
9
Prototype Exemplos de código: public interface AddressClone {
public Object clone(); }
10
Prototype Exemplos de código:
public class Address implements AddressClone{ private String type, street, city, state, zipCode; public Address(String initType, String initStreet, String initCity, String initState, String initZip){ type = initType; street = initStreet; city = initCity; state = initState; zipCode = initZip; } public Address() {} public Object clone(){ return new Address(type, street, city, state, zipCode); public String toString(){...}
11
Prototype Exemplos de código: public class RunPrototype {
public static void main(String[] args) { System.out.println("Exemplo do padrão Prototype."); System.out.println("Este exemplo vai criar um objeto endereço"); System.out.println("e depois duplica-lo com o método clone."); System.out.println("Criando primeiro endereço:"); Address address1 = new Address("Casa", "Avenida das Américas", "Rio de Janeiro", "RJ", " "); System.out.println("Primeiro endereço criado."); System.out.println("Hash code 1 = " + address1.hashCode()); System.out.println(address1.toString()); System.out.println("Criando segundo endereço e usando o método clone:"); Address address2 = (Address)address1.clone(); System.out.println("Segundo endereço criado."); System.out.println("Hash code 2 = " + address2.hashCode()); System.out.println(address2.toString()); }
12
Prototype Exemplos de código: Exemplo do padrão Prototype.
Este exemplo vai criar um objeto endereço e depois duplica-lo com o método clone. Criando primeiro endereço: Primeiro endereço criado. Hash code 1 = Avenida das Américas, Rio de Janeiro, RJ, Criando segundo endereço e usando o método clone: Segundo endereço criado. Hash code 2 =
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.