Паттерн Компоновщик на C#

Паттерн Компоновщик объединяет объекты в древовидные структуры для представления иерархий часть\целое. Компоновщик позволяет клиенту выполнять однородные операции сами отдельными объектами и их совокупностями.

Паттерн Компоновщик позволяет клиенту выполнять однородные операции с комбинациями и отдельными объектами.

Паттерн Компоновщик предоставляет структуру для хранения как отдельных объектов, так и комбинаций.

В реализации паттерна Компоновщик приходится искать баланс между прозрачностью, безопасностью и вашими потребностями.

Рассмотрим пример, в котором нам надо реализовать меню для интерактивного автомата в одной из кафешек.

У нас имеются отдельные классы завтрака и обеда, с набором каких-то блюд. Когда клиент подходит к автомату, он выбирает блюда для завтрака или обеда, но часто бывает такое что в обед могут входить блюда из завтрака. А также дополнятся новыми блюдами сегодняшнего дня. Представляете сложность иерархии построения такой логики программы, когда каждый день придется вносить еще какие-то правки? Вот тут и приходит к нам на помощь Паттерн Компоновщик, который поможет создать древовидное меню блюд, и выводить всю информацию о них.

 

Обновлено: 27.01.2022 — 09:45

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.