Паттерн Компоновщик объединяет объекты в древовидные структуры для представления иерархий часть\целое. Компоновщик позволяет клиенту выполнять однородные операции сами отдельными объектами и их совокупностями. Паттерн Компоновщик позволяет клиенту выполнять однородные операции с комбинациями и отдельными объектами. Паттерн Компоновщик предоставляет структуру для хранения как отдельных объектов, так и комбинаций. В реализации паттерна Компоновщик приходится искать баланс между […]
Рубрика: Структурные паттерны
Паттерн Фасад C#
Паттерн Фасад— предоставляет унифицированный интерфейс к группе интерфейсов подсистемы. Фасад определяет высокоуровневый интерфейс, упрощающий работу с подсистемой. Если вам понадобится упростить большой интерфейс или семейство сложных интерфейс или семейство сложных интерфейсов. Фасад изолирует клиента от сложной подсистемы. Реализация фасада основана на композиции и делегировании. Для подсистемы можно реализовать несколько фасадов. Рассмотрим такой пример, многие из […]
Паттерн Адаптер на C#
Паттерн Адаптер преобразует интерфейс класса к другому интерфейсу, на который рассчитан клиент. Адаптер обеспечивает совместную работу классов, невозможную в обычных условиях из-за несовместимости интерфейсов. Преобразует один интерфейс к другому. Мы часто видим адаптеры в реальной жизни, адаптеры для телефонов, розеток, различных устройств. Устройств может быть десятки, а для них может подходить один адаптер, который, к […]
Паттерн Декоратор на C#
Паттерн декоратор как его еще называют оберткой, динамически наделяет объект новыми возможностями и является гибкой альтернативой субклассированию в области расширения функциональности. Давайте представим проблему мы разрабатываем программную часть кофейного автомата. В начале у нас автомат умел только выдавать названия сорта кофе и готовить его, а также рассчитывал его стоимость. В автомате у нас находилось не […]