Назад к вопросам
amoCRM
Junior — Middle
71
Каким образом осуществляется связь и обмен данными между пользовательским интерфейсом и бизнес-логикой в архитектуре MVVM?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В архитектуре MVVM (Model-View-ViewModel) связь между пользовательским интерфейсом (View) и бизнес-логикой (ViewModel) осуществляется через механизм двунаправленного связывания данных (data binding). Это значит, что изменения в модели данных автоматически отражаются в интерфейсе, а действия пользователя обновляют данные в ViewModel.
В Android для этого часто используют LiveData или Observable объекты, которые View подписывается и реагирует на изменения. ViewModel содержит логику и данные, а View — только отображение и обработку пользовательских событий.
Пример с LiveData:
class MyViewModel : ViewModel() {
val userName = MutableLiveData<String>()
}
// В Activity или Fragment
viewModel.userName.observe(this) { name ->
textView.text = name
}
// При изменении userName в ViewModel, текст в textView обновится автоматически