Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Padrões de Projeto Mediator
2
Mediator Motivação Aplicabilidade
Encapsular o comportamento coletivo num objeto mediador O mediador é responsável pelo controle e coordenação das interações de um grupo de objetos Diminuir o número de interconexões entre os objetos Aplicabilidade A reutilização de um objeto é difícil porque ele referencia e se comunica com muitos outros objetos Um conjunto de objetos se comunica de maneira bem-definida, porém complexa. As interdependências resultantes são desestruturadas e difíceis de entender © LES/PUC-Rio
3
Mediator Estrutura © LES/PUC-Rio
4
Mediator Participantes Mediator ConcreteMediator Colleague classes
Define uma interface para comunicar com objetos da classe Colleague ConcreteMediator Responsável por coordenar a comunicação entre os objetos da classe Colleague Conhece e mantém todos os colegas Colleague classes Cada classe Colleague conhece seu objeto Mediator Cada colega se comunica com seu mediador quando quiser se comunicar com outro colega © LES/PUC-Rio
5
Mediator Consequências Limita o uso de subclasses Desacopla colegas
Um mediador localiza o comportamento, de outra forma, estaria distribuído entre vários objeto Desacopla colegas Um mediador promove um acoplamento fraco entre colegas Simplifica o protocolo dos objetos Um mediador substitui interações muitos-para-muitos por interações um-para-muitos entre o mediador e seus colegas Relacionamentos um-para-muitos são mais fáceis de compreender, manter e estender © LES/PUC-Rio
6
Mediator Exemplo de código © LES/PUC-Rio
7
Mediator Exemplo de código © LES/PUC-Rio
8
Mediator Exemplo de código © LES/PUC-Rio
9
Mediator Referências Padrões de Projeto – GoF The Mediator
GAMMA, E.; HELM, R.; JOHNSON, R.; VLISSIDES, J..Padrões de Projeto: Soluções Reutilizáveis de Software Orientado a Objetos. Trad. Luiz A. M. Salgado. – Porto Alegre: Bookman, 2000. The Mediator Mediator pattern Mediator Design Pattern © LES/PUC-Rio
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.