17 lines
1.1 KiB
Markdown
17 lines
1.1 KiB
Markdown
|
# Наблюдатель
|
||
|
|
||
|
Поведенческий паттерн проектирования, который создаёт механизм подписки, позволяющий одним объектам следить и реагировать на события, происходящие в других объектах.
|
||
|
|
||
|
При использовании паттерна возможен как [запрос](request/), так и [активная доставка](delivery/) данных от субъекта (запрос считается более "правильным").
|
||
|
|
||
|
- **Активная доставка** - передача субъектом аргументов в качестве параметров функции `update()`
|
||
|
- **Запрос** - подразумевает получение необходимых параметров от субъекта внутри функции `update()`
|
||
|
|
||
|
## Принципы
|
||
|
|
||
|
- Стремиться к слабой связанности взаимодействующих объектов
|
||
|
|
||
|
## Схемы
|
||
|
|
||
|
![scheme-1](scheme-1.png)
|