Junior — Middle
Můžeš vysvětlit hlavní komponenty architektonického vzoru Model-View-Controller?
sobes.tech AI
Odpověď od AI
Architektonický vzor Model-View-Controller (MVC) rozděluje aplikaci na tři hlavní komponenty:
-
Model (Model): odpovídá za data a obchodní logiku. Model uchovává stav aplikace a spravuje data, například je načítá z databáze nebo API.
-
View (Zobrazení): odpovídá za zobrazování dat uživateli. View přijímá data z modelu a zobrazuje je, a také reaguje na uživatelský vstup.
-
Controller (Řadič): slouží jako prostředník mezi Modelem a View. Zpracovává akce uživatele, aktualizuje model a mění zobrazení.
V iOS například často hraje roli řadiče UIViewController, který řídí interakci mezi modelem a zobrazením.
Příklad:
class UserModel {
var name: String
init(name: String) {
self.name = name
}
}
class UserView {
func displayUserName(_ name: String) {
print("Uživatelské jméno je: \(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)
}
}
Takové rozdělení usnadňuje údržbu a rozšiřování aplikace.