Sobes.tech
Junior — Middle

Ar galite paaiškinti pagrindinius Model-View-Controller architektūros modelio komponentus?

sobes.tech AI

Atsakymas iš AI

Architektūros modelis Model-View-Controller (MVC) padalija programą į tris pagrindinius komponentus:

  • Modelis (Modelis): atsakingas už duomenis ir verslo logiką. Modelis saugo programos būseną ir valdo duomenis, pavyzdžiui, juos įkelia iš duomenų bazės ar API.

  • Peržiūra (View): atsakinga už duomenų rodymą vartotojui. Peržiūra gauna duomenis iš modelio ir juos rodo, taip pat reaguoja į vartotojo įvestį.

  • Valdiklis (Controller): veikia kaip tarpininkas tarp Modelio ir Peržiūros. Jis apdoroja vartotojo veiksmus, atnaujina modelį ir keičia peržiūrą.

Pavyzdžiui, iOS, UIViewController dažnai atlieka valdiklio vaidmenį, valdydamas sąveiką tarp modelio ir peržiūros.

Pavyzdys:

class UserModel {
    var name: String
    init(name: String) {
        self.name = name
    }
}

class UserView {
    func displayUserName(_ name: String) {
        print("Vartotojo vardas: \(name)")
    }
}

class UserController {
    var model: UserModel
    var view: UserView

    init(model: UserModel, view: UserView) {
        self.model = model
        self.view = view
    }

    func updateUserName(to newName: String) {
        model.name = newName
        view.displayUserName(model.name)
    }
}

Toks išdėstymas palengvina programos priežiūrą ir plėtrą.