Junior — Middle
MVC memarlığında model, görünüş və nəzarətçi arasında məlumat mübadiləsi necə baş verir?
sobes.tech Süni İntellekt
AI-dan cavab
MVC (Model-Görünüş-Nəzarətçi) memarlığında, üç komponent arasında məsuliyyət bölünməsi həyata keçirilir:
- Model (Model) — məlumatlar və biznes məntiqi üçün cavabdehdir.
- View (Görünüş) — istifadəçiyə məlumatların göstərilməsi üçün cavabdehdir.
- Controller (Nəzarətçi) — istifadəçi girişini emal edir və model və görünüş ilə qarşılıqlı əlaqədə olur.
Məlumat mübadiləsi aşağıdakı kimi baş verir:
- İstifadəçi View ilə qarşılıqlı əlaqə qurur (məsələn, düyməyə basır).
- View hadisəni Controller-a göndərir.
- Controller hadisəni emal edir, ehtiyac olarsa, Model-dəki məlumatları dəyişir.
- Model vəziyyətini yeniləyir.
- Model dəyişikliklər barədə View-yə məlumat verir (məsələn, müşahidəçi naxşı və ya birbaşa çağırış vasitəsilə).
- View yeni Model məlumatlarına əsasən göstərişi yeniləyir.
PHP-də nümunə (sadələşdirilmiş):
// Nəzarətçi
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());
}
}
Bu şəkildə, nəzarətçi model və görünüş arasında vasitəçi kimi çıxış edir və məlumat və hadisə axınını təmin edir.