Page 104 - 4190
P. 104

Продовження таблиці 9.1
                      1                        2                                     3
                                   Зберігач                   Закрита інформація, що зберіга-
                                                              ється ззовні об’єкта і час її збері-

                                                              гання
                                   Ланцюжок                   Об’єкт, що виконує запит

                                   обов’язків
                                   Шаблонний метод  Кроки алгоритму

                  6. Визначити імена операцій, що бувають у патерні. Тут, як і в

            попередньому випадку, імена залежать від  додатка. Треба викорис-
            товувати ті функції і взаємодії, які асоційовані з кожною операцією.
            Крім  того,  потрібно  бути  послідовним  при  виборі  імен.  Наприклад,

            дла позначення фабричного методу  можна було б використати пре-
            фікс Create-.
                  7. Реалізувати операції, які виконують обов’язки і відповідають

            за відношення, що визначені в патерні. Поради про те, як це краще
            зробити, можна знайти в розділі реалізації та частково в розділі при-
            клад коду.

                  Усе, що сказано вище – це прості рекомендації. З часом можна
            виробити власний підхід до роботи з патернами проектування.
                  Ніяке  обговорення  того,  як  користуватися  патернами  проекту-
            вання, не можна вважати повним, якщо не сказати про те, які не по-

            трібно застосовувати. Нерідко за гнучкість і простоту змін, які дають
            патерни,  доводиться  платити  ускладненням  дизайну  і  погіршенням
            продуктивності. Патерн проектування варто застосовувати тоді, коли

            додаткова гнучкість дійсно необхідна.


                                           Питання для самоконтролю

                  1. Яку роль відіграють патерни при розробленні прикладних про-
            грам та інструментальних бібліотек?

                  3. Яку роль відіграють патерни при розробленні каркасів додат-
            ків?
                  4. Вкажіть відмінності між патернами і каркасами додатків.

                  5. Вкажіть різні підходи до вибору потрібного патерну.
                  6. Перелічіть кроки, які можуть допомогти ефективно застосову-
            вати патерни.

                  7. Які елементи дизайну можна  замінити  патернами?

                                                             104
   99   100   101   102   103   104   105   106   107   108   109