ООП для чайников. Паттерны проектирования. Прокси (proxy)

Последний паттерн из группы структурных, — Прокси. Его назначение в том, что бы добавлять дополнительный слой функциональности между клиентом и подсистемой (субъектом). В такой, казалось бы избыточной работе есть масса смысла и пользы, приведу несколько примеров когда это оправдано:

  • субъект находится на другой машине и Прокси скрывает протокол доступа, при обращениях
  • создает экземпляр субъекта, только когда это действительно надо, кеширует результаты.
  • может контролировать права доступа при вызовах
  • производит синхронные вызовы в асинхронной среде

На диаграмме прокси выглядит так:

proxy

Короткий пример Прокси:

class XMPPRequest():

    def __init__(self, connect):
        pass

    def send(self, to, text):
        return True

class XmppProxy():

    def send(self, who, to, text):
        xmpp = XMPPRequest(who)
        return xmpp.send(to, text)

if __name__ == '__main__':
    proxy = XmppProxy()
    print(proxy.send("mrjazz", "team", "hi all"))

Site Footer

Sliding Sidebar

About Me

About Me

For whom this blog for?

For those who are interested in modern Internet technologies, IT business, startups, management, quality control, personal effectiveness, motivation. Here I write about what is interesting, about problems I faced and solutions I found. I hope it will be interesting to you either.

What motivates me to write?

The desire to improve, to study deeper topics that interest me. Find people with similar problems and tasks, together look for ways out and solutions.

Feel free to contact if you have anything to say to me

Old Flash site with my artistic works and misuc.