Junior — Middle
Hoe vindt de uitwisseling van informatie plaats tussen het model, de view en de controller in de MVC-architectuur?
sobes.tech AI
Antwoord van AI
In de MVC-architectuur (Model-View-Controller) wordt de verantwoordelijkheid verdeeld over drie componenten:
- Model — verantwoordelijk voor de gegevens en de bedrijfslogica.
- View — verantwoordelijk voor het weergeven van de gegevens aan de gebruiker.
- Controller — verwerkt de invoer van de gebruiker en werkt samen met het model en de view.
De informatie-uitwisseling verloopt als volgt:
- De gebruiker interacteert met de View (bijvoorbeeld door op een knop te drukken).
- De View stuurt het evenement naar de Controller.
- De Controller verwerkt het evenement, wijzigt mogelijk de gegevens in het Model.
- Het Model werkt zijn toestand bij.
- Het Model informeert de View over de wijzigingen (bijvoorbeeld via het observer-patroon of directe aanroep).
- De View werkt de weergave bij op basis van de nieuwe gegevens uit het Model.
Voorbeeld in PHP (vereenvoudigd):
// 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());
}
}
Op deze manier fungeert de controller als tussenpersoon tussen het model en de view, en zorgt voor de stroom van gegevens en gebeurtenissen.