Page 80 - 4190
P. 80

Цей шаблон часто застосовують у ситуаціях, в яких відправника
            повідомлень не цікавить, що роблять одержувачі з наданою їм інфор-
            мацією.
                  UML-діаграма  класів  патерну  Observer  зображена  на  рисунку

            7.11.





























                          Рисунок 7.11 – UML-діаграма класів патерну Observer

                  Патерн State
                  Патерн State (Стан) – дозволяє об'єктові варіювати свою поведі-
            нку  залежно  від  внутрішнього  стану.  Ззовні  здається,  що  змінився

            клас об'єкта.
                  Слід використовувати шаблон Стан у випадках, якщо:
                    поведінка об'єкта залежить від його стану та повинна змінюва-

            тись під час виконання програми;
                    у  коді  операцій  бувають  умовні  оператори,  що  складаються  з
            багатьох частин, у котрих вибір гілки залежить від стану. Зазвичай у
            такому разі стан представлено константами, що перелічуються. Часто

            одна й та ж структура умовного оператору повторюється у декількох
            операціях. Шаблон Стан пропонує помістити кожну гілку у окремий
            клас. Це дозволить трактувати стан об'єкта як самостійний об'єкт, ко-

            трий можна змінити незалежно від інших.
                  UML-діаграма класів патерну State зображена на рисунку 7.12.










                                                              80
   75   76   77   78   79   80   81   82   83   84   85