Посетитель
🔒 Sign in to use this
Посетитель — поведенческий паттерн, позволяющий добавлять новые операции в существующую иерархию классов, не изменяя сами классы. Вы отделяете алгоритм от структуры объектов: вместо добавления нового метода в каждый класс иерархии вы создаёте класс-Посетитель с выделенным методом для каждого класса. Классам иерархии нужен лишь метод accept(Visitor) — добавленный однажды, он открывает их для неограниченного числа будущих операций.
ℹ️Ключевая идея: двойная диспетчеризация — при вызове element.accept(visitor) метод accept() элемента вызывает visitor.visit(this), направляя выполнение к перегрузке метода, соответствующей конкретному типу элемента. Это позволяет добавлять новые операции, не трогая существующие классы элементов.
Content is available with subscription.
Get full access to all courses on the platform for one year with a single payment.
▼
▼
Unlike other platforms that charge per course, here you get everything for one price, and after one year of use there will be no automatic charge for the following year.
🔒 Sign in to use this