A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Visitor Carlos R. M. Junior Eduardo Motta. Propósito do Padrão Representar operações a ser executadas nos elementos de uma estrutura de objetos; Permitir.

Apresentações semelhantes


Apresentação em tema: "Visitor Carlos R. M. Junior Eduardo Motta. Propósito do Padrão Representar operações a ser executadas nos elementos de uma estrutura de objetos; Permitir."— Transcrição da apresentação:

1 Visitor Carlos R. M. Junior Eduardo Motta

2 Propósito do Padrão Representar operações a ser executadas nos elementos de uma estrutura de objetos; Permitir definir uma nova operação sem mudar as classes dos elementos sobre as quais opera.

3 Motivação Um compilador que representa programas como árvores sintáticas abstratas. – Necessidade de execução de operações nas árvores sintáticas abstratas para análises semânticas estáticas;

4 Motivação Verificar se todas as variáveis estão definidas; Geração de código executável. Operação de tipos; Otimização de código; Análise de fluxo; Verificação se as variáveis receberam valores antes de serem usadas.

5 Motivação Solução Inicial

6 Motivação Visitor

7 Aplicabilidade Estrutura de objetos contém muitas classes de objetos e deseja-se executar operações sobre esses objetos que dependem das classes concretas;

8 Aplicabilidade Muitas operações distintas e não- relacionadas de uma estrutura de objetos; Estrutura das classes raramente muda, porém, operações novas podem ser freqüentemente adicionadas.

9 Estrutura

10 Participantes Visitor – Declara uma operação visit para cada classe ConcreteElement na estrutura do objeto. ConcreteVisitor – Implementa uma operação. Element – Define uma operação accept que aceita um visitante como um argumento.

11 Participantes ConcreteElement – Implementa operação accept que aceita um visitante como um argumento. ObjectStructure – Pode enumerar seus elementos; – Pode fornecer uma interface de alto nível para permitir ao visitante visitar seus elementos; – Poder ser uma coleção ou uma composição.

12 Colaboração

13 Consequências Visitor torna fácil a adição de novas operações; Um visitor reúne operações relacionadas e separa as operações não-relacionadas. É difícil acrescentar novas classes ConcreteElement;

14 Consequências Visita hierarquia de classes; Acumula estados; Rompe o encapsulamento.

15 Exemplos

16

17

18

19

20 Dúvidas


Carregar ppt "Visitor Carlos R. M. Junior Eduardo Motta. Propósito do Padrão Representar operações a ser executadas nos elementos de uma estrutura de objetos; Permitir."

Apresentações semelhantes


Anúncios Google