Mediator
Eder Carlos
George Freire
Wagner Castro
UFRN
INSTITUTO METRÓPOLE DIGITAL
PÓS-GRADUAÇÃO/RESIDÊNCIA EM ENGENHARIA D...
Sumário
• INTRODUÇÃO
• INTENÇÃO
• APLICABILIDADE
• ESTRUTURA
• VANTAGENS x DESVANTAGENS
• PADRÕES RELACIONADOS
• IMPLEMENT...
Introdução
PADRÕES DE PROJETO GOF
CRIACIONAIS
COMPORTAMENTAIS
ESTRUTURAIS
MEDIATOR
Intenção
• “Definir um objeto que encapsula a forma como um conjunto
de objetos interage. O Mediator promove o acoplamento...
Intenção
• Atua como mediador entre relacionamentos “muitos para
muitos”, concentrando a maneira como os objetos interagem...
Aplicabilidade
• Quando um conjunto de objetos se comunica entre si de
modo bem definido , mas complexo;
• Quando é difíci...
Estrutura
Estrutura
• Mediator:
• Define uma interface de comunicação com objetos da classe
Colleague;
• Concrete Mediator:
• Faz a ...
Vantagens x Desvantagens
• Vantagens
• Desacoplamento entre os diversos participantes da rede de
comunicação (participante...
PADRÕES RELACIONADOS
• Facade: Um Mediator simplificado torna-se um
padrão Facade se o mediador for a única classe ativa e...
Implementação - Chat
Referências
• Design Patterns: Elements of Reusable Object-Oriented
Software
• http://imasters.com.br/artigo/21642/dotnet/...
Próximos SlideShares
Carregando em…5
×

Padrão de Projeto Mediator

764 visualizações

Publicada em

Estudo sobre o Padrão de Projeto Mediator

Publicada em: Software
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
764
No SlideShare
0
A partir de incorporações
0
Número de incorporações
17
Ações
Compartilhamentos
0
Downloads
20
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Padrão de Projeto Mediator

  1. 1. Mediator Eder Carlos George Freire Wagner Castro UFRN INSTITUTO METRÓPOLE DIGITAL PÓS-GRADUAÇÃO/RESIDÊNCIA EM ENGENHARIA DE SOFTWARE Natal, outubro de 2013
  2. 2. Sumário • INTRODUÇÃO • INTENÇÃO • APLICABILIDADE • ESTRUTURA • VANTAGENS x DESVANTAGENS • PADRÕES RELACIONADOS • IMPLEMENTAÇÃO • REFERÊNCIAS
  3. 3. Introdução PADRÕES DE PROJETO GOF CRIACIONAIS COMPORTAMENTAIS ESTRUTURAIS MEDIATOR
  4. 4. Intenção • “Definir um objeto que encapsula a forma como um conjunto de objetos interage. O Mediator promove o acoplamento fraco ao evitar que objetos se refiram uns aos outros explicitamente e permitir variar suas interações independentemente” (Gof). • Exemplo: interações entre páginas web de um ecommerce.
  5. 5. Intenção • Atua como mediador entre relacionamentos “muitos para muitos”, concentrando a maneira como os objetos interagem. • Exemplo: Inúmeros embarques e desembarques gerenciados por um Centro Controlador de Tráfego Aéreo.
  6. 6. Aplicabilidade • Quando um conjunto de objetos se comunica entre si de modo bem definido , mas complexo; • Quando é difícil reusar um objeto porque ele se comunica com muitos outros objetos ; • Quando o comportamento distribuído entre diversas classes deve ser personalizado sem excesso de subclasses; • Exemplos: • Muito útil para programadores Visual Basic (principalmente das versões 5 e 6), pois ele é um atalho para a falta de herança. • Java Message Service (JMS); • Java.util.Timer class scheduleXXX() methods; • Java Concurrency Executor execute () method; • Java.lang.reflect.Method invoke() method;
  7. 7. Estrutura
  8. 8. Estrutura • Mediator: • Define uma interface de comunicação com objetos da 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. • Colleague Classes: • Cada classe conhece seu mediador; • Os objetos Colleague se comunicam com seu objeto Mediator, ao invés de se comunicar com outros objetos Colleagues.
  9. 9. Vantagens x Desvantagens • Vantagens • Desacoplamento entre os diversos participantes da rede de comunicação (participantes não se conhecem); • Eliminação de relacionamentos muitos para muitos (são todos substituídos por relacionamentos um para muitos); • A política de comunicações está centralizada no mediador e pode ser alterada sem mexer nos colaboradores. • Desvantagens • A centralização pode ser uma fonte de gargalos de desempenho e de risco para o sistema em caso de falha; • Na prática, os mediadores tendem a se tornar mais complexos.
  10. 10. PADRÕES RELACIONADOS • Facade: Um Mediator simplificado torna-se um padrão Facade se o mediador for a única classe ativa e se as classes Colleagues forem classes passivas; • Adapter: O padrão Mediator apenas media os pedidos entre as classes Colleague; • Observer: Os padrões Mediator e Observer são semelhantes, resolvendo o mesmo problema.
  11. 11. Implementação - Chat
  12. 12. Referências • Design Patterns: Elements of Reusable Object-Oriented Software • http://imasters.com.br/artigo/21642/dotnet/o-padrao-de- projeto-mediator-na-pratica/ • http://brizeno.wordpress.com/category/padroes-de- projeto/mediator/ • http://www.javacodegeeks.com/2013/08/mediator-design- pattern-in-java-example-tutorial.html

×