Junior — Middle
Ako sa zabezpečuje prenos dát od podnikovej logiky k používateľskému rozhraniu?
sobes.tech AI
Odpoveď od AI
V Androidu je prenos dát od podnikovej logiky k používateľskému rozhraniu zvyčajne realizovaný prostredníctvom ViewModel a LiveData (alebo StateFlow/Flow v moderných prístupoch).
Hlavný vzor je MVVM (Model-View-ViewModel):
- Podniková logika sa nachádza v vrstve Model alebo v repository.
- ViewModel získava dáta z podnikovej logiky a ich ukladá do LiveData alebo iných pozorovateľných objektov.
- UI (Activity/Fragment) sa prihlási k týmto dátam a aktualizuje sa pri ich zmene.
Príklad s LiveData:
class MyViewModel : ViewModel() {
val data: MutableLiveData<String> = MutableLiveData()
fun loadData() {
// Získanie dát z podnikovej logiky
data.value = "Ahoj, svet!"
}
}
// V Activity alebo Fragment
viewModel.data.observe(this) { value ->
textView.text = value
}
Tento prístup zabezpečuje reaktívne aktualizácie UI pri zmene dát a oddeľuje podnikovú logiku od prezentácie.