Sobes.tech
Junior — Middle

Cum se poate notifica View despre evenimente sau modificări în arhitectura MVP?

sobes.tech AI

Răspuns de la AI

În arhitectura MVP (Model-View-Presenter), View este notificată despre evenimente sau modificări prin intermediul unei interfețe pe care o implementează View și care apelează Presenter-ul. Principalele modalități de notificare:

  • Callback-uri: Presenter-ul apelează metodele interfeței View pentru a informa despre modificări.
  • Observator (Observer): View se abonează la evenimentele Presenter-ului și primește notificări.
  • Utilizarea LiveData sau RxJava (pe Android): Presenter-ul actualizează datele, iar View se abonează la modificări și reacționează automat.

Exemplu cu o interfață View:

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

class MyPresenter(private val view: MyView) {
    fun loadData() {
        // încărcare date
        val data = "Exemplu de date"
        view.showData(data) // notificăm View
    }
}

Astfel, Presenter-ul controlează logica și notifică View-ul prin metodele interfeței.