Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Кочетков А.О..docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
75.09 Кб
Скачать

5.6. Легковаговик

Призначення

Використовується для ефективної підтримки (в першу чергу для зменшення затрат пам'яті) великої кількості дрібних об'єктів.

Переваги

  • Зменшує кількість об'єктів, що підлягають обробці.

  • Зменшує вимоги до пам'яті.

Застосування

Шаблон Легковаговик можна використовувати коли:

  • В програмі використовується велика кількість об'єктів.

  • Затрати на збереження високі через велику кількість об'єктів.

  • Більшість станів об'єктів можна зробити зовнішніми.

  • Велика кількість груп об'єктів може бути замінена відносно малою кількістю загальнодоступних об'єктів, однократно видаливши зовнішній стан.

  • Програма не залежить від ідентичності об'єктів. Оскільки об'єкти-легковаговики можуть використовуватися колективно, то тести на ідентичність будуть повертати значення "істина" ("true") для концептуально різних об'єктів.

5.7. Фасад

Фаса́д — шаблон проектування, призначений для об'єднання групи підсистем під один уніфікований інтерфейс, надаючи доступ до них через одну точку входу. Це дозволяє спростити роботу з підсистемами.

Фасад відноситься до структурних шаблонів проектування.

Складові шаблону

Класи, з яких складається шаблон можна розділити на 3 частини:

  1. фасад;

  2. підсистеми;

  3. клієнти.

Випадки використання

Фасад використовується у випадках, коли потрібно:

  • спростити доступ до складної системи;

  • створити рівні доступу до системи;

  • додати стійкість до змін підсистем;

  • зменшити кількість сильних зв'язків між клієнтом та підсистемою, але залишити доступ до повної функціональності.

6. Шаблони поведінки

Шаблони поведінки (англ. behavioral patterns) — шаблони проектування, що пов'язані з алгоритмами та розподілом обов'язків поміж об'єктів. Мова в них йде не тільки про самі об'єкти та класи, але й про типові способи їхньої взаємодії. Шаблони поведінки характеризують складний потік керування, котрий досить важко прослідкувати під час виконання програми. Увага акцентована не на потоці керування, а на зв'язках між об'єктами.

У шаблонах поведінки рівня класу використовується спадкування — щоб розподілити поведінку поміж різних класів.

У шаблонах поведінки рівня об'єкта використовується композиція. Деякі з них описують, як за допомогою кооперації багато рівноправних об'єктів пораються із завданням, котре жодному з них не під силу. Тут є важливим те, як об'єкти отримують інформацію про існування один одного. Об'єкти-колеги можуть зберігати посилання один на одного, але це посилює ступінь зв'язаності системи. За максимального рівня зв'язаності кожному об'єкту довелось би мати інформацію про всі інші. Деякі з наведених шаблонів вирішують цю проблему

Перелік шаблонів поведінки 

  • Відвідувач (Visitor)

  • Інтерпретатор (Interpreter)

  • Ітератор (Iterator)

  • Команда (Command)

  • Ланцюг обов'язків (Chain of Responsibility)

  • Посередник (Mediator)

  • Спостерігач (Observer)

  • Стан (State)

  • Стратегія (Strategy)

  • Знімок (Memento)

  • Шаблонний метод (Template Method)