Встречается на собеседованиях • сегодня
Для чего нужен паттерн цепочка ответственности
Паттерн Chain of Responsibility позволяет передавать запросы по цепочке обработчиков, пока один из них не обработает запрос. Это помогает избежать жесткой привязки отправителя запроса к получателю и дает возможность динамически менять цепочку обработчиков.
Пример:
java
abstract class Handler {
private Handler next;
text
public Handler setNext(Handler next) {
this.next = next;
return next;
}
public abstract void handle(Request request);
protected void passToNext(Request request) {
if (next != null) next.handle(request);
}}
class AuthHandler extends Handler {
public void handle(Request request) {
if (request.isAuthenticated()) passToNext(request);
else throw new RuntimeException("Not authenticated");
}
}
class LoggingHandler extends Handler {
public void handle(Request request) {
System.out.println("Logging request");
passToNext(request);
}
}
text
Используется в:
- Middleware в веб-фреймворках
- Обработке событий
- Валидации данных
- Логировании
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы