Назад к вопросам
СБЕР Страхование
Junior — Middle
65
Опишите, каким образом реализована система отправки уведомлений в вашем проекте
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В моём проекте на Java система отправки уведомлений реализована с использованием паттерна "Наблюдатель" (Observer). Есть центральный сервис уведомлений, который управляет списком подписчиков (слушателей) и отправляет им сообщения при наступлении определённых событий.
Пример упрощённой реализации:
interface NotificationListener {
void onNotify(String message);
}
class NotificationService {
private List<NotificationListener> listeners = new ArrayList<>();
public void subscribe(NotificationListener listener) {
listeners.add(listener);
}
public void unsubscribe(NotificationListener listener) {
listeners.remove(listener);
}
public void notifyAll(String message) {
for (NotificationListener listener : listeners) {
listener.onNotify(message);
}
}
}
// Использование:
NotificationService service = new NotificationService();
service.subscribe(msg -> System.out.println("Получено уведомление: " + msg));
service.notifyAll("Новая задача создана");
Такой подход позволяет легко расширять систему, добавляя новые типы уведомлений и получателей без изменения существующего кода.