Sobes.tech
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.