пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ


11. ШаблонCreator. Призначення

Рішення. Призначити класу В обов'язок створювати екземпляри класу А, якщо виконується одна з наступних умов.
nКлас В агрегує (aggregate) об'єкти А.
nКлас В містить (contains) об'єкти А.
nКлас В записує (records) екземпляри об'єктів А.
nКлас В активно використовує (closely uses) об'єкти А.
nКлас В володіє даними ініціалізації (has the initializing data), які передаватимуться об'єктам А при їх створенні (тобто при створенні об'єктів А клас В є експертом).
nКлас В — творець (creator) об'єктів А.
nЯкщо виконується декілька з цих умов, то краще використовувати клас, агрегуючий або такий, що містить клас А.
Проблема. Хто повинен відповідати за створення нового екземпляра деякого класу?
 
переваги
Підтримується шаблон Low Coupling, сприяючий зниженню витрат на супровід і що забезпечує можливість повторного використання створених компонентів надалі.
Вживання шаблону Creator не підвищує міри зв'язаності, оскільки створений (created) клас, як правило, виявляється видимим для класу-творця за допомогою наявних асоціацій.
 

 


хиты: 466
рейтинг:0
Точные науки
информатика
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь