Combine — это функциональный реактивный
Swift
фреймворк, который недавно реализован для всех платформ
Apple
, включая
Xcode 11
. С помощью
Combine очень легко обрабатывать последовательности асинхронно появляющихся во времени значений
values. Он также позволяет упростить асинхронный код, отказавшись от делегирования и сложных вложенных
callbacks.
Но изучение самого фреймворка
Combine на первых порах может показаться не таким уж простым. Дело в том, что основными «игроками»
Combine являются такие абстрактные понятия, как «издатели»
Publishers, «подписчики»
Subscribers и операторы
Operators, без которых не удастся продвинуться в понимании логики функционирования
Combine. Однако благодаря тому, что
Apple
предоставляет разработчикам уже готовых «издателей», «подписчиков» и операторов, код, написанный с помощью
Combine, оказывается очень компактным и хорошо читаемым.
Вы увидите это на примере приложения, связанного с асинхронной выборкой информации о фильмах из очень популярной сейчас базы данных
TMDb. Мы создадим два различных приложения:
UIKit и
SwiftUI, и покажем, как с ними работает
Combine.
