SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
Padrão Mediator
Estephânia Rodrigues
Gustavo Moreira
Izabel Rodrigues
Priscilla Aguiar
Thiago Sinésio
Pós-Graduação em Engenharia de Sotfware Centrada em Métodos Ágeis
2013
Agenda
■Introdução
■Intenção
■Motivação
■Aplicabilidade
■Estrutura
■Participantes
■Colaborações
■Consequências
■Demonstração
Introdução
Padrões de projeto GOF
Criação
Comportamentais
Estruturais
Mediator
Intenção
■ Definir um objeto para encapsular a
forma como um conjunto de objetos
interage;
■ Promover baixo acoplamento;
■ Não permitir que objetos se referenciem
entre si de maneira explícita.
Intenção
Intenção
Motivação
■ Diminuir o alto acoplamento causado pela distribuição
de comportamento entre vários objetos.
■ Essa distribuição pode resultar em muitas conexões, o
que leva um objeto ter conhecimento sobre vários
outros.
Aplicabilidade
■ O padrão mediator deve ser usado quando:
● Um conjunto de objetos se comunicar de forma
complexa, interdependências desestruturadas e de
difícil entendimento;
● A reutilização de um objeto se torna difícil por ele
referenciar e comunicar com muitos outros;
● Customizar ou adaptar um comportamento que está
distribuído entre várias classes sem a necessidade
excessiva de especialização em subclasses.
Aplicabilidade
■ Objetos podem se comunicar sem
conhecer uns aos outros.
Estrutura
Participantes
■ Mediator:
● Define uma interface de comunicação com objetos de
classe Colleague.
■ Concrete Mediator:
● Faz a implementação do comportamento cooperativo
através da coordenação de objetos Colleague.
● Responsável por manter e conhecer os objetos da
classe Colleague.
Participantes
■ Colleague Classes:
● Cada classe Colleague conhece seu Mediator;
● Os objetos Colleague se comunicam com seu objeto
Mediator, ao invés de se comunicar com outros
objetos Colleagues.
Colaborações
■ Os objetos Colleagues, uma vez que não se
conhecem, enviam e recebem solicitações do
Mediator;
■ O Mediator conhece cada um dos participantes e
direciona as solicitações para os objetos
apropriados;
■ A política de comunicação é determinada pelo
Mediator (Implementação Concreta do Mediator).
Consequências
■ Vantagens
● Limita extensão por herança (para estender ou alterar o
comportamento, basta criar uma subclasse do Mediator);
● Baixo acoplamento entre Colleagues;
● Politica de comunicações fica centralizada no Mediator e
pode ser alterada sem mexer nos Colleagues;
● Eliminação de relacionamentos muitos-para-muitos;
Consequências
■ Desvantagens
● A centralização em exagero pode ser uma fonte de
gargalos de desempenho e risco para o sistema em caso
de falhas;
● O Mediator pode se tornar muito complexo.
Dúvidas
Mais Informações
■Gamma Erich, Helm Richard, JohnsonRalp, Vlissides John. Padrões de
Projeto: Soluções Reutilizáveis de Software orientado a objetos. p. 257 -
266. Bookman, 2000.

Weitere ähnliche Inhalte

Was ist angesagt?

Sistemas operativos ficha formativa nº3 - resolução
Sistemas operativos   ficha formativa nº3 - resoluçãoSistemas operativos   ficha formativa nº3 - resolução
Sistemas operativos ficha formativa nº3 - resoluçãoteacherpereira
 
Metodologia orientado a objetos
Metodologia orientado a objetosMetodologia orientado a objetos
Metodologia orientado a objetosGabriel Faustino
 
MPP-III - Aula 08 - Usabilidade
MPP-III - Aula 08 - UsabilidadeMPP-III - Aula 08 - Usabilidade
MPP-III - Aula 08 - UsabilidadeAlan Vasconcelos
 
Unidade 2 - Processador de texto (Aula 1 e 2)
Unidade 2 - Processador de texto (Aula 1 e 2)Unidade 2 - Processador de texto (Aula 1 e 2)
Unidade 2 - Processador de texto (Aula 1 e 2)Luis Ferreira
 
Computação paralela 2 cluster e grid
Computação paralela 2 cluster e grid Computação paralela 2 cluster e grid
Computação paralela 2 cluster e grid Fernando Gomes Chaves
 
Introdução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosIntrodução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosVictor Hazin da Rocha
 
Tecnologias emergentes na sala de aula
Tecnologias emergentes na sala de aulaTecnologias emergentes na sala de aula
Tecnologias emergentes na sala de aulaCarlos Pinheiro
 
Matemática das Redes - Parte I
Matemática das Redes - Parte IMatemática das Redes - Parte I
Matemática das Redes - Parte IDalton Martins
 
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Messias Batista
 
Ficha de trabalho 1- Avarias mais comuns de um computador
Ficha de trabalho 1- Avarias mais comuns de um computador Ficha de trabalho 1- Avarias mais comuns de um computador
Ficha de trabalho 1- Avarias mais comuns de um computador Baguiasri
 
IHM x IHM – INTERFACE x INTERAçÃO HOMEM-MÁQUINA
IHM x IHM – INTERFACE x INTERAçÃO HOMEM-MÁQUINAIHM x IHM – INTERFACE x INTERAçÃO HOMEM-MÁQUINA
IHM x IHM – INTERFACE x INTERAçÃO HOMEM-MÁQUINADiego BBahia
 
Prova informatica - nivel c
Prova  informatica - nivel cProva  informatica - nivel c
Prova informatica - nivel cLucianoLLC
 
Padrões de Projetos de Interface do Usuário
Padrões de Projetos de Interface do UsuárioPadrões de Projetos de Interface do Usuário
Padrões de Projetos de Interface do UsuárioFatec Jales
 
Aula 04 ferramentas para autoria de produtos multimídia i
Aula 04   ferramentas para autoria de produtos multimídia iAula 04   ferramentas para autoria de produtos multimídia i
Aula 04 ferramentas para autoria de produtos multimídia iFábio Costa
 
Aulas 6 e 7 - Redes e Telecomunicações
Aulas 6 e 7 - Redes e TelecomunicaçõesAulas 6 e 7 - Redes e Telecomunicações
Aulas 6 e 7 - Redes e TelecomunicaçõesJocelma Rios
 
Gestalt nas capas de revistas
Gestalt nas capas de revistasGestalt nas capas de revistas
Gestalt nas capas de revistasLívia Priscilla
 
Serial windows server 2003
Serial windows server 2003Serial windows server 2003
Serial windows server 2003Purnama Bakti
 
Resumo sistemas operacionais
Resumo sistemas operacionaisResumo sistemas operacionais
Resumo sistemas operacionaisDaniel Brandão
 

Was ist angesagt? (20)

Sistemas operativos ficha formativa nº3 - resolução
Sistemas operativos   ficha formativa nº3 - resoluçãoSistemas operativos   ficha formativa nº3 - resolução
Sistemas operativos ficha formativa nº3 - resolução
 
Metodologia orientado a objetos
Metodologia orientado a objetosMetodologia orientado a objetos
Metodologia orientado a objetos
 
MPP-III - Aula 08 - Usabilidade
MPP-III - Aula 08 - UsabilidadeMPP-III - Aula 08 - Usabilidade
MPP-III - Aula 08 - Usabilidade
 
Unidade 2 - Processador de texto (Aula 1 e 2)
Unidade 2 - Processador de texto (Aula 1 e 2)Unidade 2 - Processador de texto (Aula 1 e 2)
Unidade 2 - Processador de texto (Aula 1 e 2)
 
Computação paralela 2 cluster e grid
Computação paralela 2 cluster e grid Computação paralela 2 cluster e grid
Computação paralela 2 cluster e grid
 
Introdução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosIntrodução a Sistemas Distribuídos
Introdução a Sistemas Distribuídos
 
Tecnologias emergentes na sala de aula
Tecnologias emergentes na sala de aulaTecnologias emergentes na sala de aula
Tecnologias emergentes na sala de aula
 
Matemática das Redes - Parte I
Matemática das Redes - Parte IMatemática das Redes - Parte I
Matemática das Redes - Parte I
 
Modelos de processos de software
Modelos de processos de softwareModelos de processos de software
Modelos de processos de software
 
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
 
Ficha de trabalho 1- Avarias mais comuns de um computador
Ficha de trabalho 1- Avarias mais comuns de um computador Ficha de trabalho 1- Avarias mais comuns de um computador
Ficha de trabalho 1- Avarias mais comuns de um computador
 
IHM x IHM – INTERFACE x INTERAçÃO HOMEM-MÁQUINA
IHM x IHM – INTERFACE x INTERAçÃO HOMEM-MÁQUINAIHM x IHM – INTERFACE x INTERAçÃO HOMEM-MÁQUINA
IHM x IHM – INTERFACE x INTERAçÃO HOMEM-MÁQUINA
 
Prova informatica - nivel c
Prova  informatica - nivel cProva  informatica - nivel c
Prova informatica - nivel c
 
Padrões de Projetos de Interface do Usuário
Padrões de Projetos de Interface do UsuárioPadrões de Projetos de Interface do Usuário
Padrões de Projetos de Interface do Usuário
 
Aula 04 ferramentas para autoria de produtos multimídia i
Aula 04   ferramentas para autoria de produtos multimídia iAula 04   ferramentas para autoria de produtos multimídia i
Aula 04 ferramentas para autoria de produtos multimídia i
 
Aulas 6 e 7 - Redes e Telecomunicações
Aulas 6 e 7 - Redes e TelecomunicaçõesAulas 6 e 7 - Redes e Telecomunicações
Aulas 6 e 7 - Redes e Telecomunicações
 
Gestalt nas capas de revistas
Gestalt nas capas de revistasGestalt nas capas de revistas
Gestalt nas capas de revistas
 
Serial windows server 2003
Serial windows server 2003Serial windows server 2003
Serial windows server 2003
 
Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
 
Resumo sistemas operacionais
Resumo sistemas operacionaisResumo sistemas operacionais
Resumo sistemas operacionais
 

Andere mochten auch

Andere mochten auch (6)

Quick reference
Quick referenceQuick reference
Quick reference
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Apresentação Introdução Design Patterns
Apresentação Introdução Design PatternsApresentação Introdução Design Patterns
Apresentação Introdução Design Patterns
 
Orientação a Objetos - Da Teoria a Pratica
Orientação a Objetos - Da Teoria a PraticaOrientação a Objetos - Da Teoria a Pratica
Orientação a Objetos - Da Teoria a Pratica
 
Patterns
PatternsPatterns
Patterns
 
Black sabbath
Black sabbathBlack sabbath
Black sabbath
 

Ähnlich wie Mediator Padrão

mediator-140416223151-phpapp02.pdf
mediator-140416223151-phpapp02.pdfmediator-140416223151-phpapp02.pdf
mediator-140416223151-phpapp02.pdfJandersonAzevedo5
 
Mediator Padrão de Projeto
Mediator Padrão de ProjetoMediator Padrão de Projeto
Mediator Padrão de ProjetoFlávio França
 
Análise de redes sociais: novas oportunidades de geração de conhecimento na Web
Análise de redes sociais: novas oportunidades de geração de conhecimento na WebAnálise de redes sociais: novas oportunidades de geração de conhecimento na Web
Análise de redes sociais: novas oportunidades de geração de conhecimento na WebDalton Martins
 
Brainstorming e Técnica de Grupo Nominal
Brainstorming e Técnica de Grupo NominalBrainstorming e Técnica de Grupo Nominal
Brainstorming e Técnica de Grupo NominalDen Mazini '.'
 
Gestao da Informacao e Midias Sociais
Gestao da Informacao e Midias SociaisGestao da Informacao e Midias Sociais
Gestao da Informacao e Midias SociaisDalton Martins
 
Global virtual collaboration resumido
Global virtual collaboration resumidoGlobal virtual collaboration resumido
Global virtual collaboration resumidoCentrical
 
Empresas Sem Gestao Do Conhecimento
Empresas Sem Gestao Do ConhecimentoEmpresas Sem Gestao Do Conhecimento
Empresas Sem Gestao Do ConhecimentoJose Claudio Terra
 
Softwares que Duram: Uma abordagem Arquitetônica
Softwares que Duram: Uma abordagem ArquitetônicaSoftwares que Duram: Uma abordagem Arquitetônica
Softwares que Duram: Uma abordagem ArquitetônicaHugo Seabra
 
Rie s#1 - t#1 - redes de empresas - v00
Rie   s#1 - t#1 - redes de empresas - v00Rie   s#1 - t#1 - redes de empresas - v00
Rie s#1 - t#1 - redes de empresas - v00docjsareias
 
Líder modulo 1
Líder modulo 1Líder modulo 1
Líder modulo 1Centrical
 
Seminario sma,abms e netlogo
Seminario   sma,abms e netlogoSeminario   sma,abms e netlogo
Seminario sma,abms e netlogoDiogo Winck
 
A arte de conhecer e conduzir os diferentes
A arte de conhecer e conduzir os diferentesA arte de conhecer e conduzir os diferentes
A arte de conhecer e conduzir os diferentesRaquel Souza
 
Introdução à Arquitetura da Informação com Card Sorting
Introdução à Arquitetura da Informação com Card SortingIntrodução à Arquitetura da Informação com Card Sorting
Introdução à Arquitetura da Informação com Card SortingJerry Medeiros
 
Sistemas de Informações - Aula 01: Apresentação da Disciplina
Sistemas de Informações - Aula 01: Apresentação da DisciplinaSistemas de Informações - Aula 01: Apresentação da Disciplina
Sistemas de Informações - Aula 01: Apresentação da DisciplinaMarcus Araújo
 
O Backlog do Agile Coach
O Backlog do Agile CoachO Backlog do Agile Coach
O Backlog do Agile CoachRafael F. Buzon
 
Sistemas Multiagentes e Sistemas Distribuídos Sensíveis ao Contexto
Sistemas Multiagentes e Sistemas Distribuídos Sensíveis ao ContextoSistemas Multiagentes e Sistemas Distribuídos Sensíveis ao Contexto
Sistemas Multiagentes e Sistemas Distribuídos Sensíveis ao ContextoHelio Henrique L. C. Monte-Alto
 

Ähnlich wie Mediator Padrão (20)

mediator-140416223151-phpapp02.pdf
mediator-140416223151-phpapp02.pdfmediator-140416223151-phpapp02.pdf
mediator-140416223151-phpapp02.pdf
 
Mediator Padrão de Projeto
Mediator Padrão de ProjetoMediator Padrão de Projeto
Mediator Padrão de Projeto
 
Análise de redes sociais: novas oportunidades de geração de conhecimento na Web
Análise de redes sociais: novas oportunidades de geração de conhecimento na WebAnálise de redes sociais: novas oportunidades de geração de conhecimento na Web
Análise de redes sociais: novas oportunidades de geração de conhecimento na Web
 
CRP-5215-0420-2014-08
CRP-5215-0420-2014-08CRP-5215-0420-2014-08
CRP-5215-0420-2014-08
 
Cibercultura e redes sociais - aula 03 - turma 03
Cibercultura e redes sociais - aula 03 - turma 03Cibercultura e redes sociais - aula 03 - turma 03
Cibercultura e redes sociais - aula 03 - turma 03
 
Brainstorming e Técnica de Grupo Nominal
Brainstorming e Técnica de Grupo NominalBrainstorming e Técnica de Grupo Nominal
Brainstorming e Técnica de Grupo Nominal
 
Gestao da Informacao e Midias Sociais
Gestao da Informacao e Midias SociaisGestao da Informacao e Midias Sociais
Gestao da Informacao e Midias Sociais
 
Global virtual collaboration resumido
Global virtual collaboration resumidoGlobal virtual collaboration resumido
Global virtual collaboration resumido
 
Empresas Sem Gestao Do Conhecimento
Empresas Sem Gestao Do ConhecimentoEmpresas Sem Gestao Do Conhecimento
Empresas Sem Gestao Do Conhecimento
 
Softwares que Duram: Uma abordagem Arquitetônica
Softwares que Duram: Uma abordagem ArquitetônicaSoftwares que Duram: Uma abordagem Arquitetônica
Softwares que Duram: Uma abordagem Arquitetônica
 
Rie s#1 - t#1 - redes de empresas - v00
Rie   s#1 - t#1 - redes de empresas - v00Rie   s#1 - t#1 - redes de empresas - v00
Rie s#1 - t#1 - redes de empresas - v00
 
Líder modulo 1
Líder modulo 1Líder modulo 1
Líder modulo 1
 
Seminario sma,abms e netlogo
Seminario   sma,abms e netlogoSeminario   sma,abms e netlogo
Seminario sma,abms e netlogo
 
A arte de conhecer e conduzir os diferentes
A arte de conhecer e conduzir os diferentesA arte de conhecer e conduzir os diferentes
A arte de conhecer e conduzir os diferentes
 
Introdução à Arquitetura da Informação com Card Sorting
Introdução à Arquitetura da Informação com Card SortingIntrodução à Arquitetura da Informação com Card Sorting
Introdução à Arquitetura da Informação com Card Sorting
 
Sistemas de Informações - Aula 01: Apresentação da Disciplina
Sistemas de Informações - Aula 01: Apresentação da DisciplinaSistemas de Informações - Aula 01: Apresentação da Disciplina
Sistemas de Informações - Aula 01: Apresentação da Disciplina
 
Gof mediator pattern
Gof   mediator patternGof   mediator pattern
Gof mediator pattern
 
Worshop w3i ars p fidalgo
Worshop w3i ars p fidalgoWorshop w3i ars p fidalgo
Worshop w3i ars p fidalgo
 
O Backlog do Agile Coach
O Backlog do Agile CoachO Backlog do Agile Coach
O Backlog do Agile Coach
 
Sistemas Multiagentes e Sistemas Distribuídos Sensíveis ao Contexto
Sistemas Multiagentes e Sistemas Distribuídos Sensíveis ao ContextoSistemas Multiagentes e Sistemas Distribuídos Sensíveis ao Contexto
Sistemas Multiagentes e Sistemas Distribuídos Sensíveis ao Contexto
 

Mehr von Thiago Sinésio

Domain Name System (DNS)
Domain Name System (DNS)Domain Name System (DNS)
Domain Name System (DNS)Thiago Sinésio
 
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendThiago Sinésio
 
Metodologia Crystal Clear (Crystal Clear Methodologies)
Metodologia Crystal Clear (Crystal Clear Methodologies)Metodologia Crystal Clear (Crystal Clear Methodologies)
Metodologia Crystal Clear (Crystal Clear Methodologies)Thiago Sinésio
 
ANÁLISE DA DIVERGÊNCIA ENTRE A DEMONSTRAÇÃO E A INSTRUÇÃO VERBAL NA AQUISIÇÃO...
ANÁLISE DA DIVERGÊNCIA ENTRE A DEMONSTRAÇÃO E A INSTRUÇÃO VERBAL NA AQUISIÇÃO...ANÁLISE DA DIVERGÊNCIA ENTRE A DEMONSTRAÇÃO E A INSTRUÇÃO VERBAL NA AQUISIÇÃO...
ANÁLISE DA DIVERGÊNCIA ENTRE A DEMONSTRAÇÃO E A INSTRUÇÃO VERBAL NA AQUISIÇÃO...Thiago Sinésio
 
Análise da associação entre tempo de reação e tempo de movimento em crianças
Análise da associação entre tempo de reação e tempo de movimento em criançasAnálise da associação entre tempo de reação e tempo de movimento em crianças
Análise da associação entre tempo de reação e tempo de movimento em criançasThiago Sinésio
 
Efeito da prática sistemática no tempo de reação de crianças
Efeito da prática sistemática no tempo de reação de criançasEfeito da prática sistemática no tempo de reação de crianças
Efeito da prática sistemática no tempo de reação de criançasThiago Sinésio
 
Apresentação Crystal Clear
Apresentação Crystal ClearApresentação Crystal Clear
Apresentação Crystal ClearThiago Sinésio
 

Mehr von Thiago Sinésio (8)

Domain Name System (DNS)
Domain Name System (DNS)Domain Name System (DNS)
Domain Name System (DNS)
 
Treinamento de Feedback
Treinamento de FeedbackTreinamento de Feedback
Treinamento de Feedback
 
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
 
Metodologia Crystal Clear (Crystal Clear Methodologies)
Metodologia Crystal Clear (Crystal Clear Methodologies)Metodologia Crystal Clear (Crystal Clear Methodologies)
Metodologia Crystal Clear (Crystal Clear Methodologies)
 
ANÁLISE DA DIVERGÊNCIA ENTRE A DEMONSTRAÇÃO E A INSTRUÇÃO VERBAL NA AQUISIÇÃO...
ANÁLISE DA DIVERGÊNCIA ENTRE A DEMONSTRAÇÃO E A INSTRUÇÃO VERBAL NA AQUISIÇÃO...ANÁLISE DA DIVERGÊNCIA ENTRE A DEMONSTRAÇÃO E A INSTRUÇÃO VERBAL NA AQUISIÇÃO...
ANÁLISE DA DIVERGÊNCIA ENTRE A DEMONSTRAÇÃO E A INSTRUÇÃO VERBAL NA AQUISIÇÃO...
 
Análise da associação entre tempo de reação e tempo de movimento em crianças
Análise da associação entre tempo de reação e tempo de movimento em criançasAnálise da associação entre tempo de reação e tempo de movimento em crianças
Análise da associação entre tempo de reação e tempo de movimento em crianças
 
Efeito da prática sistemática no tempo de reação de crianças
Efeito da prática sistemática no tempo de reação de criançasEfeito da prática sistemática no tempo de reação de crianças
Efeito da prática sistemática no tempo de reação de crianças
 
Apresentação Crystal Clear
Apresentação Crystal ClearApresentação Crystal Clear
Apresentação Crystal Clear
 

Mediator Padrão