Junior — Middle
Môžeš vysvetliť hlavné komponenty architektonického vzoru Model-View-Controller?
sobes.tech AI
Odpoveď od AI
Architektonický vzor Model-View-Controller (MVC) rozdeľuje aplikáciu na tri hlavné komponenty:
-
Model (Model): zodpovedá za údaje a obchodnú logiku. Model uchováva stav aplikácie a spravuje údaje, napríklad ich načítava z databázy alebo API.
-
View (Zobrazenie): zodpovedá za zobrazovanie údajov používateľovi. Zobrazenie prijíma údaje z modelu a ich zobrazuje, a tiež reaguje na vstup používateľa.
-
Controller (Riadič): slúži ako sprostredkovateľ medzi Modelom a Zobrazením. Spracováva akcie používateľa, aktualizuje model a mení zobrazenie.
V iOS, napríklad, UIViewController často hrá úlohu riadiča, ktorý riadi interakciu medzi modelom a zobrazením.
Príklad:
class UserModel {
var name: String
init(name: String) {
self.name = name
}
}
class UserView {
func displayUserName(_ name: String) {
print("Používateľské meno 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)
}
}
Takéto rozdelenie uľahčuje údržbu a rozširovanie aplikácie.