Sobes.tech
Junior — Senior
80

Эффективная модель обработки серверных событий

Условие задачи

Имеется абстракция соединения с сервером, через которую сервер передаёт поток событий в виде JSON‑сообщений. Различные модули приложения подписываются на определённые типы событий. Требуется спроектировать и реализовать эффективный механизм, позволяющий разным частям системы получать только интересующие их события, минимизировать накладные расходы и обеспечить удобный способ подписки/отписки.

interface ServerConnection {

    // Emits events in JSON format
    fun event(): Flow<String>
}