Skip to content

Latest commit

 

History

History
44 lines (42 loc) · 794 Bytes

File metadata and controls

44 lines (42 loc) · 794 Bytes

Mediator

https://refactoring.guru/ja/design-patterns/mediator

classDiagram
  class Mediator {
    <<interface>>
    + notify(sender)
  }
  class ConcreteMediator {
    - componentA
    - componentB
    - componentC
    + notify(sender)
    + reactOnA()
    + reactOnB()
    + reactOnC()
  }
  class Colleague {
    - mediator
    + setMediator()
  }
  class ComponentA {
    - mediator
    + operationA()
  }
  class ComponentB {
    - mediator
    + operationB()
  }
  class ComponentC {
    - mediator
    + operationC()
  }
  ConcreteMediator ..|> Mediator
  ConcreteMediator o--> ComponentA
  ConcreteMediator o--> ComponentB
  ConcreteMediator o--> ComponentC
  ComponentA --|> Colleague
  ComponentB --|> Colleague
  ComponentC --|> Colleague
  Colleague --> Mediator
Loading