Прототип (шаблон проектування)
Матеріал з Вікіпедії — вільної енциклопедії.
Прототип (англ. Prototype) - шаблон проектування, відноситься до класу твірних шаблонів.
Зміст |
[ред.] Призначення
Задає види об'єктів, що створюються, за допомогою екземпляру-прототипу, та створює нові об'єкти шляхом копіювання цього прототипу.
[ред.] Мотивація
[ред.] Застосовність
Слід використовувати шаблон Прототип коли:
- класи, що інстанціюються, визначаються під час виконання, наприклад за допомогою динамічного завантаження;
- треба запобігти побудові ієрархій класів або фабрик, паралельних ієрархій класів продуктів;
- екземпляри класу можуть знаходитись у одному з не дуже великої кількості станів. Може статися, що зручніше встановити відповідну кількість прототипів та клонувати їх, а не інстанціювати кожний раз клас уручну в слушному стані.
[ред.] Структура
- Prototype – прототип:
- визначає інтерфейс для клонування самого себе;
- ConcretePrototype – конкретний прототип:
- реалізує операцію клонування самого себе;
- Client – клієнт:
- створює новий об'єкт, звертаючись до прототипу із запитом клонувати себе.
[ред.] Відносини
Клієнт звертається до прототипу, щоб той створив свого клона.
[ред.] Джерела
- Design Patterns: Elements of Reusable Object-Oriented Software