Junior — Middle
Hogyan történik az információcsere a modell, a nézet és a vezérlő között az MVC architektúrában?
sobes.tech MI
Válasz az MI-től
Az MVC (Model-View-Controller) architektúrában három komponens között történik felelősségmegosztás:
- Model (Modell) — felelős az adatokért és az üzleti logikáért.
- View (Nézet) — felelős az adatok megjelenítéséért a felhasználónak.
- Controller (Irányító) — feldolgozza a felhasználói bemenetet és interakcióba lép a modellel és a nézettel.
Az információcsere a következőképpen történik:
- A felhasználó interakcióba lép a View-val (pl. gombnyomás).
- A View elküldi az eseményt a Controller-nek.
- A Controller feldolgozza az eseményt, szükség szerint módosítja a Model-ben lévő adatokat.
- A Model frissíti az állapotát.
- A Model értesíti a View-t a változásokról (pl. megfigyelő mintán vagy közvetlen híváson keresztül).
- A View frissíti a megjelenítést az új adatok alapján.
Példa PHP-ben (egyszerűsített):
// Irányító
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());
}
}
Így a vezérlő közvetítőként működik a modell és a nézet között, biztosítva az adat- és eseményáramlást.