Projeto de Sistemas de Software

Slides:



Advertisements
Apresentações semelhantes
|Introdução a Java para programadores Telis. Jogo de Dados simples O jogo é jogado por dois jogadores. Cada jogador faz sua jogada (lança um dado), e.
Advertisements

JAVA Orientação a Objetos
Recursividade Inhaúma Neves Ferraz
Programação Orientada a Objetos*
Classes Abstratas e Interfaces
Collections Marco Antonio, Arquiteto de Software – TJDF Atualizado Dezembro/2008.
Java Básico Orientação a Objeto Marco Antonio Software Architect Fev/2008.
Chain of Responsibility
Projeto de Sistemas de Software
Projeto de Sistemas de Software
Padrão de Projeto Interpreter
Projeto de Sistemas de Software Trabalho de Padrões de Projeto
Factory Method Projeto de Sistemas de Software
Projeto de Sistemas de Software Kelly Leal Leandra Mara da Silva
Projeto de Sistemas de Software
Projeto de Sistemas de Software(PSS) Baldoino F. dos S. Neto
Padrões de Projeto Prototype.
Juliana França Santos Aquino
Padrão de Projeto Iterator
Projeto de Sistemas de Software Leandra Mara da Silva
Padrão Abstract Factory
Orientação a Objetos: Modificador Final para Métodos e Classes
Herança, sobrecarga e ligação dinâmica zHerança zReferência super zSobrecarga de métodos zSobreposição zLigação dinâmica de métodos zfinal.
Walfredo Cirne walfredo.dsc.ufpb.br
Wagner Santos C. de Jesus
JAVA ENUMS © 2009 by Jorge L. de Souza Leão março de 2009 PEE - COPPE/UFRJ.
Capítulo 9 Herança 1.
Paradigmas de Linguagens de Programação Paradima da Programação Orientada à Objetos Professor: Armando Hage Belém-2008.
Concorrência em Java Threads em Java.
Threads: Introdução e Implementação
Tipos Agregados Homogêneos e Listas
Programação Orientada a Objetos com Java
Padrão de Projeto Visitor
JAVA Linguagem Ambiente de Desenvolvimento
METODOLOGIA PARA DESENVOLVIMENTO DE SISTEMAS Prof. Dr. rer. nat. Daniel D. Abdala 1.
Interfaces.
Hashing - Espalhamento
Atributos, Encapsulamento e Interface em Java
1 Mobilidade de Código com μcode Projeto Giga Alexandre Lages
Paulo Borba Centro de Informática Universidade Federal de Pernambuco Classes Abstratas e Interfaces.
Os métodos equals() e hashCode()
Orientação a Objetos e Java Graduação em Ciência da Computação
Capítulo 1. static import  A importação estática pode ser utilizado quando queremos acessar métodos ou atributos estáticos de uma outra classe.  Através.
T. D. S. I. PARA WEB Prof. Emmanuel Nolêto. Java RMI.
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa This.
POO - I Prof.: Jean Carlo Mendes
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa Membro Static.
Wagner Santos C. de Jesus
Introdução às Java Threads
Java Kickstart, day 2 Semelhanças com linguagem C.
Aula Prática 4 Monitoria IP/CC (~if669).
Implementação Orientada a Objetos – Aula 05 Construtores e sobrecarga de métodos Prof. Danielle Martin Universidade de Mogi das Cruzes
Polimorfismo.
1 Marcio de Carvalho Victorino JAVA. 2 Declaração de Atributos [ ] [transient] [volatile] [static] [final] ; controle de acesso –public, package (default),
Classes Abstratas e Interface
Exceções Profa. Patrícia A. Jaques Alterada por Leandro Tonietto abr-15.
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
M ÉTODOS DA C LASSE S TRING. FUNÇÕES COM STRING Uma string é um tipo texto que corresponde à união de um conjunto de caracteres. Em Java, as strings são.
Aula Prática 5 05/05/2010. //Estrutura do método public int subtrair (int a, int b){ //Calcule a operação desejada. int resultado = a – b; //Retorne o.
Certificação Marco Antonio. Introdução A compreensão desse capítulo é muito importante pois trata de um assunto essencial em qualquer linguagem de programação,
RMI Objetos Distribuídos Luiz C. D´oleron SCJP
Coleções em Java - Parte 2
Herança Modelagem e Programação Orientada a Objetos
Construtores e Destrutores
Padrões de Projeto Abstract Factory.
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
J U nit Um Framework Para Testes. Motivação  Todos os programadores sabem que devem testar seu código  Quanto mais curto o prazo menos testes são realizados.
Laboratório de Programação II Método main Dados e Métodos de Classes.
Padrões Criacionais Abstraem o processo de criação de instâncias (objetos), oferecendo flexibilidade no que é criado, por quem, como e quando.
1 Interface (o termo) » Interface (a palavra reservada): Java estendeu o conceito de interfaces à um nível ainda mais flexível que permite construir entidades.
Transcrição da apresentação:

Projeto de Sistemas de Software Padrões de Projeto: Prototype Equipe: Bruno Silva de Carvalho

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.

Prototype Motivação: Role-playing game; Aplicativos gráficos; Outros.

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.

Prototype Estrutura:

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.

Prototype Colaborações: Um cliente solicita a um protótipo que este clone a si próprio.

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.

Prototype Exemplos de código: public interface AddressClone { public Object clone(); }

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(){...}

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", "23020-470"); 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()); }

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 = 11394033 Avenida das Américas, Rio de Janeiro, RJ, 23020-470 Criando segundo endereço e usando o método clone: Segundo endereço criado. Hash code 2 = 4384790