Sobes.tech
Назад к вопросам
Junior — Middle
66

Опишите, каким образом реализована система отправки уведомлений в вашем проекте

Компании, где спрашивали
СБЕР СтрахованиеСБЕР Страхование

Ответ от нейросети

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("Новая задача создана");

Такой подход позволяет легко расширять систему, добавляя новые типы уведомлений и получателей без изменения существующего кода.