Обновить
2
Станислав Шияновский@st-small

iOS Developer

Отправить сообщение

Потоко-защищённая шина событий в Swift

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели5.8K

В крупных приложениях для iOS взаимодействие между компонентами зачастую оказывается сложнее, чем сам компонент. Сервис завершает операцию, координатор должен отреагировать, возможно, потребуется обновить несколько экранов, и передача каждой зависимости по всему дереву навигации быстро начинает казаться излишней «рутинной» работой. Внедрение зависимостей и управление состоянием по-прежнему имеют своё место. Шина (данных) событий предоставляет нам ещё один инструмент для слабосвязанных уведомлений, где прямое управление добавило бы ненужную сложность. Цель этого компонента проста: позволить одной части приложения публиковать событие, а другим частям приложения — подписываться на события определенного типа. Реализация сосредоточена на типовой безопасности, потокобезопасном хранении, автоматической очистке при деаллокации владельца, явной отмене отдельных подписок, доставке MainActor для кода пользовательского интерфейса и поддержке AsyncStream для потребителей async/await.

Читать далее

Информация

В рейтинге
Не участвует
Откуда
Кировоград, Кировоградская обл., Украина
Дата рождения
Зарегистрирован
Активность

Специализация

Разработчик мобильных приложений
Ведущий
Git
Bash
Разработка под iOS
Swift
SwiftUI
UIKit
Xcode
CoreData
GCD
MVVM