Sobes.tech
Junior — Middle

Como é feita a transferência de dados da lógica de negócio para a interface do utilizador?

sobes.tech IA

Resposta da IA

No Android, a transferência de dados da lógica de negócio para a interface de utilizador é geralmente feita através de ViewModel e LiveData (ou StateFlow/Flow em abordagens modernas).

O padrão principal é MVVM (Model-View-ViewModel):

  • A lógica de negócio encontra-se na camada Model ou nos repositórios.
  • O ViewModel obtém dados da lógica de negócio e os armazena em LiveData ou outros objetos observáveis.
  • A UI (Activity/Fragment) subscreve-se a esses dados e atualiza-se quando eles mudam.

Exemplo com LiveData:

class MyViewModel : ViewModel() {
    val data: MutableLiveData<String> = MutableLiveData()

    fun loadData() {
        // Obtém dados da lógica de negócio
        data.value = "Olá, mundo!"
    }
}

// Na Activity ou Fragment
viewModel.data.observe(this) { value ->
    textView.text = value
}

Esta abordagem garante uma atualização reativa da UI quando os dados mudam e separa a lógica de negócio da apresentação.