Junior — Middle
Jak probíhá výměna informací mezi modelem, pohledem a kontrolerem v architektuře MVC?
sobes.tech AI
Odpověď od AI
V architektuře MVC (Model-View-Controller) dochází k rozdělení odpovědností mezi třemi komponentami:
- Model (Model) — odpovídá za data a obchodní logiku.
- View (Zobrazení) — odpovídá za zobrazování dat uživateli.
- Controller (Řadič) — zpracovává vstup uživatele a komunikuje s modelem a zobrazením.
Výměna informací probíhá následovně:
- Uživatel interaguje s View (například stisknutím tlačítka).
- View předá událost Controlleru.
- Controller zpracuje událost, případně změní data v Modelu.
- Model aktualizuje svůj stav.
- Model informuje View o změnách (například přes pozorovatel nebo přímý volání).
- View aktualizuje zobrazení na základě nových dat z Modelu.
Příklad v PHP (zjednodušený):
// Controller
class UserController {
private $model;
private $view;
public function __construct($model, $view) {
$this->model = $model;
$this->view = $view;
}
public function updateUserName($name) {
$this->model->setName($name);
$this->view->render($this->model->getData());
}
}
Tímto způsobem funguje řadič jako prostředník mezi modelem a zobrazením, zajišťující tok dat a událostí.