Middle
Кои шаблони за дизайн знаете?
sobes.tech AI
Отговор от AI
- Създаващи:
- Фабричен метод: Създаване на обекти чрез интерфейс без указване на конкретен клас.
- Абстрактна фабрика: Създаване на семейства от свързани или зависими обекти без указване на техните конкретни класове.
- Строител: Стъпково създаване на сложен обект, позволяващо използването на същия код за строителство за получаване на различни представяния на обекта.
- Прототип: Създаване на нови обекти чрез копиране на съществуващи.
- Одиночка: Гарантира, че класът има само един екземпляр, и предоставя глобална точка за достъп до него.
- Структурни:
- Адаптер: Преобразува интерфейса на един клас в друг, който очакват клиентите.
- Мост: Разделя абстракцията и реализацията така, че те да могат да се променят независимо.
- Компоновчик: Позволява групиране на обекти в дървовидни структури за представяне на йерархии част-цяло.
- Декоратор: Динамично добавя нови отговорности към обекта, обгръщайки го в декораторски обекти.
- Фасад: Предоставя опростен интерфейс към сложна подсистема.
- Приспособенец: Позволява съхраняване в паметта на голям брой малки обекти, споделяйки тяхното общо състояние.
- Заместител: Предоставя заместител или запълнител за друг обект за контрол на достъпа до него.
- Поведенчески:
- Цепочка от отговорности: Позволява предаване на заявки последователно по веригата от обработващи.
- Команда: Превръща заявката в самостоятелен обект, съдържащ цялата информация за заявката.
- Итератор: Предоставя начин за последователен достъп до всички елементи на съставен обект, без да разкрива вътрешното му представяне.
- Посредник: Определя обект, който инкапсулира начина на взаимодействие на набор от обекти.
- Хранител: Позволява запазване и възстановяване на предишното състояние на обекта, без да разкрива детайлите на неговата реализация.
- Наблюдател: Определя зависимост тип "един към много" между обекти, така че при промяна на състоянието на един, всички зависими от него да бъдат уведомени и автоматично актуализирани.
- Състояние: Позволява на обекта да променя поведението си в зависимост от вътрешното си състояние.
- Стратегия: Определя семейство от алгоритми, инкапсулира всеки от тях и ги прави взаимозаменяеми.
- Шаблонен метод: Определя скелет на алгоритъм в операция, оставяйки на подкласовете да дефинират някои от стъпките.
- Посетител: Представлява операция, която трябва да бъде изпълнена върху елементите на структурата от обекти.
Също така запознат с антипатерни и принципи SOLID.