Карточка Senior MVC, MVP, MVVM, MVI, VIPER обновлено
TCA, BLoC, Redux: общий принцип
Вопрос
Что общего у TCA (iOS), BLoC (Flutter) и Redux (React Native)?
Попробуйте сами
Ответьте про себя или вслух, потом откройте ответ и сверьтесь.
Показать ответ и разбор
Коротко
Состояние хранится в одном месте, изменяется только через события или действия, а побочные эффекты (сеть, таймеры) вынесены из чистой функции изменения состояния и описаны явно.
Ответ
Состояние хранится в одном месте, изменяется только через события или действия, а побочные эффекты (сеть, таймеры) вынесены из чистой функции изменения состояния и описаны явно.
Разбор
Плюс: предсказуемость и тесты. Минус: порог входа и шаблонный код, особенно для простых экранов.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Термины по теме
Ещё по теме «MVC, MVP, MVVM, MVI, VIPER»
- Выбор паттерна для небольшого приложения
- Почему MVC в iOS называют Massive View Controller
- Кто за что отвечает в паттернах
- Однонаправленный поток данных в MVI
- Чем MVP отличается от MVVM
- Суть MVVM
- Одноразовые события во view model
- Код-ревью: view model экрана заказа (Kotlin)