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

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

Padrão de Projeto Composite Leandro Alvim. Propósito do Padrão Compor objetos em uma estrutura de árvore – Representar hierarquias de parte-todo Tratar.

Apresentações semelhantes


Apresentação em tema: "Padrão de Projeto Composite Leandro Alvim. Propósito do Padrão Compor objetos em uma estrutura de árvore – Representar hierarquias de parte-todo Tratar."— Transcrição da apresentação:

1 Padrão de Projeto Composite Leandro Alvim

2 Propósito do Padrão Compor objetos em uma estrutura de árvore – Representar hierarquias de parte-todo Tratar objetos e composições de objetos uniformemente – Mascarar ao Cliente a manipulação desses objetos

3 Motivação - Exemplo Um figura pode ser – Linha, retângulo ou texto (primitivas) Uma figura conter – Figura (composição de primitivas) O Cliente quer apenas desenhar a figura – Aspectos estruturais não são relevantes O que é Linha ?

4 Motivação - Exemplo Uma figura é uma composição de uma figura com primitivas

5 Estrutura

6 Participantes Component (nó) – Define a interface para os objetos da composição – Implementa o comportamento de uma interface comum para todas as composições e objetos dessas composições – Define uma inetrface para manipulação e aesso para os componentes filhos Leaf (nó folha ou terminal) –Define o comportamento do objeto primitivo –Objeto folha de uma composição Não possui filhos

7 Participantes Composite (nó não- terminal) – Armazena componentes filhos – Define um comportamento comum para os objetos filhos – Implementa operações da interface Component que estão relacionadas aos seus componentes filhos Client –Manipula objetos que estão contidos em composições a partir da interface Component

8 Colaborações

9 Aplicabilidade Quando se quer representar hierarquias de parte-todo Quando a distinção entre objetos e composições de objetos é irrelevante ao Cliente – Cliente trata objetos e composições uniformemente

10 Conseqüências Vantagens – Traz ao Cliente a simplicidade quanto a utilização de uma estrutura Tratamento semehante para primitivas e composições – Facilidade quanto a adição de novos componentes Não há necessidade de reestruturação do Cliente A adição de um novo componente não altera a estrutura de outras classes da árvore – Melhor organização dos objetos primitivos Objetos complexos são obtidos a partir da composição de objetos simples

11 Conseqüências Desvantagem – Quando o Cliente necessita de um conjunto restrito de componentes que encontram-se em uma composição Solução: Utilizar uma verificação em tempo de execução

12 Exemplo de código Component Leaf

13 Exemplo de código Composite

14 Exemplo de código

15 Fim


Carregar ppt "Padrão de Projeto Composite Leandro Alvim. Propósito do Padrão Compor objetos em uma estrutura de árvore – Representar hierarquias de parte-todo Tratar."

Apresentações semelhantes


Anúncios Google