Не изменяя существующий класс и команды лифта, добавьте безопасное перемещение: перед движением нужно убедиться, что двери закрыты.

Для учебной модели добавьте обёртку над существующим объектом лифта: перед делегированием команды движения она проверяет закрытие дверей. Если двери открыты или состояние неизвестно, движение отклоняется.

Короткий ответ

Что ответить на собеседовании

Для учебной модели добавьте обёртку над существующим объектом лифта: перед делегированием команды движения она проверяет закрытие дверей. Если двери открыты или состояние неизвестно, движение отклоняется.

Подробный разбор

Ответ с пояснениями

Для учебной модели добавьте обёртку над существующим объектом лифта: перед делегированием команды движения она проверяет закрытие дверей. Если двери открыты или состояние неизвестно, движение отклоняется.

Такой Proxy или Decorator сохраняет внешний интерфейс и не требует менять исходный класс. Все команды движения должны проходить через обёртку; обходной прямой доступ разрушает гарантию. Проверка и запуск должны быть согласованы, иначе дверь может открыться между ними. Конкретный код зависит от неприведённого API лифта. Для реального оборудования программная обёртка не заменяет аппаратные блокировки и инженерную проверку безопасности.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее