Статьи с меткой "observer"


Паттерн Наблюдатель (Observer) в PHP

Совсем недавно я просто влюбился в шаблон проектирования observer. Вы можете с легкостью построить целое приложение, используя невероятную мощь программирования управлений событиями. Что именно представляет из себя паттерн наблюдатель? Вся теория доступна на Википедии. Говоря простым языком, у нас есть объект, за которым мы хотим мониторить (наблюдать) на предмет каких-либо изменений. Большую часть времени этот объект просто освобождает события и мы хотим прослушивать их. Мы можем иметь много объектов прослушивающих один или много других объектов, проще говоря, это может быть отношение многие ко многим. Классический пример в мире баз данных это триггеры. Например, когда таблица была обновлена, прослушивающий триггер освобождается. В оконных приложениях, когда пользователь нажимает на кнопку, события освобождается и прослушивающие уведомляются для управления событием. В следующем примере мы имеем объект валидатор, который проверяет валидность e-mail адреса, освобождающий два типа событий, которые мы хотели бы прослушивать. Эти типы, ясное дело, валидный / не валидный e-mail адрес. Мы также объявим двух слушателей, по одному на каждое из типов событий, слушающих валидатор. Первый будет просто некоторым логгером ошибок, записывать неверные попытки ввода, и второй будет записывать корректный e-mail адрес в базу данных или другое место.
Комментарии: 1769     Просмотры: 47586     Рейтинг: 12345