Co to jest kontroler modelu?
Controller modelu (MVC) jest rodzajem architektury oprogramowania i wzorca projektowania, który podziela każdy element programu na dobrze zdefiniowane obszary funkcjonalności. W architekturze kontrolera modelowego modelu model dotyczy całej wewnętrznej logiki programu, która manipuluje, zapisuje, pobiera i w inny sposób obsługuje i oblicza dane. Aspekt View jest odpowiedzialny za wyświetlanie informacji z modelu dla użytkownika, a także zapewnia użytkownikowi sposób wprowadzenia programu. Kontroler przyjmuje dane wejściowe z widoku, ocenia go lub w inny sposób przetwarza go i oddziałuje z modelem, aby zmienić dane lub stan programu, który ostatecznie jest pokazany użytkownikowi za pośrednictwem widoku. Chociaż projektowanie modelu-widokowego wymaga programu do kapsułkowania funkcjonalności, trzy sekcje nadal muszą w pewnym sensie wchodzić w interakcje i ogólnie są od siebie zależne, w przeciwieństwie do innych bardziej agresywnych wzorów projektowych.
Często wzór kontrolera modelu jest widoczny w aplikacjach zarządzających graficznym interfejsem użytkownika (GUI). Korzystając z wzoru MVC, różne elementy wizualne GUI są obsługiwane przez widok, rejestrowanie i przetwarzanie tego, gdzie i co kliknięć użytkownika jest obsługiwane przez kontroler, a faktycznie zmieniając informacje lub informacje o ładowaniu jest wykonywane przez model. W zależności od dokładnej konstrukcji aplikacji, każdy element wzoru MVC może mieć mechanizm interakcji z innymi komponentami, takimi jak model, który jest w stanie bezpośrednio poinstruować widok, aby odświeżyć ekran lub widok, aby powiedzieć kontrolerowi, że odświeża ekran i nie akceptować nowego wejścia. W przeciwieństwie do niektórych wzorców projektowych, które przyjmują ścisłe podejście czarne, programy kontrolera modelu są nieco bardziej elastyczne, chociaż niektóre implementacje mogą utrudnić zmianę programu MVC.
W niektórych przypadkach wzór kontrolera modelu nie musi zawierać tylko jednego z każdego komponentu. Jednym z przykładów jest aplikacja, która ma wiele widoków, takich jak wiele monitorów lub wyświetlacz, który można zobaczyć na kilku urządzeniach klienta. W aplikacji można użyć wielu widoków i kontrolerów, która pozwala wielu użytkownikom uzyskać dostęp do bazy danych, wszystkie odpowiada na jeden model. Często jest jednak powszechne do projektowania systemów, które utrzymują stosunek jeden do jednego komponentów kontrolnych modelu.
Mimo że komponenty kontrolera modelu wiary mają poleganie na sobie, może być znacznie łatwiej modyfikować niektóre części systemu, które używają wzorca MVC niż w ogóle nie użyto żadnego wzorca, szczególnie w przypadku zastosowań zorientowanych na obiektywa. Jeśli aplikacja korzysta z zwrotów zwrotnych lub słuchaczy i obserwatorów do wdrażania interakcji między komponentami, każdy komponent można zmienić bez wpływu na pozostałe dwa. Oznacza to, że nowe GUI można wdrożyć bezFFFECTing model lub kontroler. Należy jednak zauważyć, że fundamentalne zmiany w systemie kontrolera modelu mogą wymagać niewielkiej ilości ponownego kodowania dla każdego pojedynczego komponentu.