April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: Memento Professores Eduardo Bezerra –

Slides:



Advertisements
Apresentações semelhantes
Padrão de Projeto Iterator
Advertisements

Padrão de Projeto Memento
Padrões de Projeto Mediator.
Kleinner Farias e Raphael do Vale
APSI III Aline Vasconcelos
Refactoring de Programas Java
April 05 Prof. Ismael H. F. Santos - 1 Programação Banco de Dados em Java Prof. Ismael H F Santos.
Módulo III Padrões GOF: Composite
April 05 Prof. Ismael H. F. Santos - 1 Programação Web com Java Prof. Ismael H F Santos.
Programação OO em Java Intermediário
Módulo III Padrões GOF-VI: MVC
April 05 Prof. Ismael H. F. Santos - 1 Frameworks e Padrões de SW Prof. Ismael H F Santos.
April 05 Prof. Ismael H. F. Santos - 1 Programação OO em Java Básico Prof. Ismael H F Santos.
April 05 Prof. Ismael H. F. Santos - 1 Módulo VI – J ava Standard Template Library (JSTL) Prof. Ismael H F Santos.
Módulo III Padrões GOF: Command
April 05 Prof. Ismael H. F. Santos - 1 Modulo II – Tópicos em Java – Relatórios Prof. Ismael H F Santos.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF:FactoryMethod Professores Eduardo Bezerra –
Padrões GoF - Façade.
1 Memento. 2 Há situações em que é necessário registrar o estado interno de um objeto em determinados pontos do processamento. –e.g.: checkpoints e mecanismos.
Eduardo Bezerra Padrões GoF Eduardo Bezerra
April 05 Prof. Ismael H. F. Santos - 1 Módulo II Introdução a XML DTD Prof. Ismael H F Santos.
Padrões GoF – Factory Method
Modulo I Padrões GRASP Professores
April 05 Prof. Ismael H. F. Santos - 1 Módulo II XML Processing: XSLT, SAX e DOM Prof. Ismael H F Santos.
TCC-Desenvolvimento do Projeto Tema
Observer Mantendo seus objetos atualizados
April 05 Prof. Ismael H. F. Santos - 1 Módulo IVb - JSP Prof. Ismael H F Santos.
Módulo III Padrões GOF Professores
Eric, Fabrício, João Vicente
Estruturas de Dados e Algoritmos 2006 – º Semestre
Padrão de Projeto Iterator
Adriano S. Castro André Abdalla
APLICANDO O PROCESSO DIRIGIDO POR RESPONSABILIDADES PARA A CRIAÇÃO DE UM SUBFRAMEWORK PARA VALIDAÇÃO SINTÁTICA DE FÓRMULAS Autores: Rafael Hornung Simone.
SNAPSHOT PADRÃO DE PROJETO.
Introdução Eduardo Figueiredo 04 de Março de 2010 POOAula 01 ou
April 05 Prof. Ismael H. F. Santos - 1 Módulo I Princípios e Padrões de Projeto de SW em Java Professores Eduardo Bezerra –
Padrão de Projeto Iterator Projeto de Sistemas de Software Thiago Pinheiro de Araújo.
Laboratório I Mateus Raeder. Mateus Raeder – março de 2010 Apresentação da disciplina  Professor: Mateus Raeder  Contato:  Página.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: Singleton, Professores Eduardo Bezerra –
Memento Grupo Angélica Teixeira Rodrigo Silva
Padrões de Projeto Abstract Factory.
April 05 Prof. Ismael H. F. Santos - 1 Modulo II Framework of Integrated Test - Fit Professor Ismael H F Santos –
April 05 Prof. Ismael H. F. Santos - 1 Modulo I Princípios e Padrões de Projeto de SW em Java Professores Eduardo Bezerra –
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: Iterator Professores Eduardo Bezerra –
April 05 Prof. Ismael H. F. Santos - 1 Modulo IV Padrões Core J2EE Professores Eduardo Bezerra –
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: AbstractMethod Professores Eduardo Bezerra –
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: Strategy Professores Eduardo Bezerra –
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: Observer Professores Eduardo Bezerra –
April 05 Prof. Ismael H. F. Santos - 1 Módulo V- Modelo MVC-Web Prof. Ismael H F Santos.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: State Professores Eduardo Bezerra –
Laboratório I Mateus Raeder. Mateus Raeder – fevereiro de 2009 Apresentação da disciplina  Professor: Mateus Raeder  Contato:
1 Padrão: Iterador (Iterator) Tipo - “Object behavioral” Objetivo - acessar um agregado sem expor a representação Outros nomes - Cursor.
April 05 Prof. Ismael H. F. Santos - 1 Modulo II – Tópicos em Java - Ant Prof. Ismael H F Santos.
April 05 Prof. Ismael H. F. Santos - 1 Modulo II – Tópicos em Java – Generics Prof. Ismael H F Santos.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Introdução a XML Prof. Ismael H F Santos.
Modelagem Orientada a Objetos Especialização em Engenharia de Software PUCPR 1999.
April 05 Prof. Ismael H. F. Santos - 1 Modulo V Frameworks Professores Eduardo Bezerra –
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF-II: Iterator e Composite Professores Eduardo Bezerra –
CURSO DE ESPECIALIZAÇÃO EM TECNOLOGIA JAVA DESIGN PATTERNS Prof. Cesar Augusto Tacla UTFPR/Campus Curitiba.
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Semana /08/2012 Professor Leomir J. Borba-
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2011 Professor Leomir J. Borba-
REFATORAÇÃO JOÃO LACERDA DJALMA LIMA. MARTIN FOWLER É um autor conhecido na área de arquitetura de software, especializado em análise orientada a objetos,
PSW1 Prof. Rafael. Persistência Atividade que permite que o estado de um objeto exista mesmo após a extinção do processo computacional que o criou. Em.
Programação Orientada a Objetos Plano da Disciplina Ludimila Monjardim Casagrande 1º Semestre
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
1 Introdução aos Padrões de Projetos (na prática) Créditos: Lúbia Vinhas Hazel Carvalho Crato Adaptações: Prof. Nécio de Lima Veras.
GRASP: Projeto de Objetos com Responsabilidade. 2 Pauta Responsabilidades e métodos Responsabilidades e métodos Padrões Padrões GRASP: Padrões e princípios.
Introdução a Padrões de Projeto Padrões de Projeto Orientado a Objetos Profa. Danielle Martin Universidade de Mogi das Cruzes.
Programação para Internet Aula 06 Linguagem Java (Orientação a Objetos – Atributos e Métodos)
Introdução a Padrões de Projeto Padrões de Projeto Orientado a Objetos Profa. Danielle Martin Universidade de Mogi das Cruzes.
Transcrição da apresentação:

April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: Memento Professores Eduardo Bezerra – Ismael H F Santos –

Julho 06 Prof(s). Eduardo Bezerra & Ismael H. F. Santos 2 Ementa Padrões GOF Memento

Julho 06 Prof(s). Eduardo Bezerra & Ismael H. F. Santos 3 Eric Gamma, et ali, Padrões de Projeto, Ed Bookman Martin Fowler, Analysis Patterns - Reusable Object Models, Addison-Wesley,1997 Martin Fowler, Refatoração - Aperfeiçoando o projeto de código existente, Ed Bookman Bibliografia

Julho 06 Prof(s). Eduardo Bezerra & Ismael H. F. Santos 4 Livros Core Java 2, Cay S. Horstmann, Gary Cornell Volume 1 (Fundamentos) Volume 2 (Características Avançadas) Java: Como Programar, Deitel & Deitel Thinking in Patterns with JAVA, Bruce Eckel Gratuito.

Julho 06 Prof(s). Eduardo Bezerra & Ismael H. F. Santos 5 Memento POO-Java

Julho 06 Prof(s). Eduardo Bezerra & Ismael H. F. Santos 6 Memento H á situa ç ões em que é necess á rio registrar o estado interno de um objeto em determinados pontos do processamento. e.g.: checkpoints e mecanismos de undo. Essa informa ç ão de estado deve ser guardada em algum lugar externo ao objeto para que posteriormente haja a possibilidade de restaurar o objeto ao estado original. Obst á culos Expor o estado do objeto viola o princ í pio do encapsulamento. Obter somente informa ç ão p ú blica do estado pode não ser suficiente para uma restaura ç ão completa no futuro.

Julho 06 Prof(s). Eduardo Bezerra & Ismael H. F. Santos 7 Memento Inten ç ão: sem violar o encapsulamento, permitir salvar o estado interno de um objeto de maneira que este estado possa ser utilizado novamente mais tarde para “ restaurar ” o objeto. Solu ç ão: armazenar o subconjunto do estado desse objeto (o originator) em um outro objeto (o memento). Assegurar que somente o originator tenha acesso a seu estado interno. Para isso, fa ç a com que o pr ó prio originator crie seus mementos.

Julho 06 Prof(s). Eduardo Bezerra & Ismael H. F. Santos 8 Memento (estrutura)

Julho 06 Prof(s). Eduardo Bezerra & Ismael H. F. Santos 9 Memento (conseqüências) Preserva o encapsulamento e simplifica o objeto Originator. O objeto Memento deve fornecer duas interfaces: uma (incompleta) para o Caretaker e outra (completa) para o Originator. Pode ser caro computacionalmente se o objeto Originator precisa armazenar uma grande propor ç ão de seu estado no Memento. Pode ser caro computacionalmente se os objetos Caretaker constantemente requisitam e/ou retornam objetos Mementos para o objeto Originator.

Julho 06 Prof(s). Eduardo Bezerra & Ismael H. F. Santos 10 Memento (aplicabilidade) 1. Uma “ fotografia ” do estado de um objeto deve ser armazenada de tal for que o objeto possa retornar a essa estado posteriormente; 2. Uma interface direta para obter o estado desse objeto iria expor detalhes internos (da implementa ç ão) do objeto (e conseq ü entemente violar o seu encapsulamento).