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 leandrouff@gmail.com


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