Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

RDSDataSource: Flux, Redux, ReSwift

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Flux

YouTube-Videos werden auf SlideShare nicht mehr unterstützt.

Original auf YouTube ansehen

Предыстория
• Сделано в FB
• Хорош в работе с динамическими данными
Wird geladen in …3
×

Hier ansehen

1 von 34 Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (19)

Ähnlich wie RDSDataSource: Flux, Redux, ReSwift (20)

Anzeige

Weitere von RAMBLER&Co (20)

Aktuellste (20)

Anzeige

RDSDataSource: Flux, Redux, ReSwift

  1. 1. Flux
  2. 2. Предыстория • Сделано в FB • Хорош в работе с динамическими данными
  3. 3. Программа • Что такое flux? • Концепция • Что есть для iOS?
  4. 4. Flux • Архитектура приложения • Flux - однонаправленный поток данных со специфичными событиями и слушателями
  5. 5. Проблемы FB • Проблема отображения непросмотренных тредов и отображения списка тредов • Изменение одной модели влечет за собой изменение других • MVC не понравилось
  6. 6. Поток данных
  7. 7. Dispatcher
  8. 8. Dispatcher • Рассылает действия зарегистрированным хранилищам • Может управлять порядком • Может ожидать ответа от предыдущего хранилища
  9. 9. Dispatcher
  10. 10. Поток данных
  11. 11. Store
  12. 12. Store • Что-то вроде модели • Предлагается складывать коллекции • Может храниться время и состояние • VM? • Можно сделать полноценным хранилищем?
  13. 13. Store
  14. 14. Поток данных
  15. 15. View
  16. 16. View • Биндятся к своим хранилищам • Используют React
  17. 17. View
  18. 18. Поток данных
  19. 19. Action
  20. 20. Action • Содержит тип и данные • Пересылаются Dispatcher'ом в Store • Могут появляться как из UI, так и из нотификаций, демонов и прочего
  21. 21. Action
  22. 22. Поток данных
  23. 23. Поток данных
  24. 24. Важные моменты • Однонаправленность • Состояние хранится в хранилищах • Синхронное обновление • Нет каскадных обновлений данных
  25. 25. Мир js • Redux: ~20k звезд • Refluxjs: ~5k звезд • бесконечно их
  26. 26. Reflux • Более функциональный • Нет Dispatcher • Хранилища могут слушать другие хранилища • Поддерживаются параллельные потоки данных
  27. 27. Что есть под iOS? • ReSwift: 2100 звезд • SwiftFlux: 166 звезд
  28. 28. ReSwift • Вдохновлялись Redux • Тоже не имеет dispatcher • Добавились reducer'ы
  29. 29. Схема
  30. 30. Преимущества • Понятный однонаправленный поток данных • Все кроме View реюзабельно • Простота дебага по полученным экшенам
  31. 31. Итоги • Flux - про однонаправленное течение данных в приложении • Есть стандартные компоненты: Action, Dispatcher, Store, View • Готовые реализации под iOS

×