@zlodiak

Хороший ли это пример паттерна mediator?

Вот пример использования паттерна mediator:
class ChatRoom(object):
    """Mediator class"""

    def display_message(self, user, message):
        print("[{} says]: {}".format(user, message))


class User(object):
    """A class whose instances want to interact with each other"""

    def __init__(self, name):
        self.name = name
        self.chat_room = ChatRoom()

    def say(self, message):
        self.chat_room.display_message(self, message)

    def __str__(self):
        return self.name


def main():
    molly = User('Molly')
    mark = User('Mark')
    ethan = User('Ethan')

    molly.say("Hi Team! Meeting at 3 PM today.")
    mark.say("Roger that!")
    ethan.say("Alright.")


if __name__ == '__main__':
    main()


Скажите пожалуйста, удачный ли это пример для иллюстрации работы этого паттерна? Меня смущают две вещи:
1. объект-медиатор существует не в единственном экземпляре
2. объекты класса User не взаимодействуют между собой, а медиатор должен помогать именно в этом

ps:
Дело в том, что я ищу понятный и наглядный пример этого паттерна, приведённое решение пока самое незапутанное на мой взгляд
  • Вопрос задан
  • 227 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы