Sobes.tech
Junior — Middle

Kako obavestiti View o događajima ili promenama u MVP arhitekturi?

sobes.tech АИ

Одговор од АИ

У архитектури MVP (Model-View-Presenter), View се обавештава о догађајима или променама преко интерфејса који реализује View и који позива Presenter. Главни начини обавештавања:

  • Обратни позиви (Callbacks): Presenter позива методе интерфејса View да обавести о променама.
  • Посматрач (Observer): View се претплаћује на догађаје Presenter-а и добија обавештења.
  • Користећи LiveData или RxJava (на Android-у): Presenter ажурира податке, а View се претплаћује на промене и реагује аутоматски.

Пример са интерфејсом View:

interface MyView {
    fun showData(data: String)
    fun showError(message: String)
}

class MyPresenter(private val view: MyView) {
    fun loadData() {
        // учитавање података
        val data = "Пример података"
        view.showData(data) // обавештавамо View
    }
}

На овај начин, Presenter контролише логику и обавештава View преко метода интерфејса.