AWWW-1st3.6-w10.tresc-1.1-Slajd22
Architektura Model-View-Controller (MVC)
Model-View-Controller (MVC) to architektura aplikacji (uznawana niekiedy również za wzorzec projektowy) zakładająca podział komponentów aplikacji na 3 kategorie:
Model – komponenty modelu, reprezentujące dane, na których operuje aplikacja i zawierające implementację logiki biznesowej;
View – komponenty widoku, odpowiadające za prezentację danych zawartych w modelu, czyli interfejs użytkownika;
Controller – komponenty sterujące, odpowiadające za obsługę zdarzeń, najczęściej zachodzących w interfejsie użytkownika w wyniku interakcji użytkownika z aplikacją; do zadań kontrolera należy również modyfikowanie modelu i widoku.
Architektura MVC została zaproponowana najpierw dla języka Smalltalk i była wykorzystywana w implementacjach graficznego interfejsu użytkownika. Następnie została zaadaptowana dla aplikacji WWW, z zachowaniem ogólnych idei, ale z pewną specyfiką, np. obsługą nawigacji między stronami jako jednym z zadań kontrolera.
Architektura MVC ułatwia tworzenie i pielęgnację dużych aplikacji, prowadząc do bardziej przejrzystego i lepiej zorganizowanego kodu oraz umożliwiając zmianę implementacji jednej z warstw aplikacji z minimalnym wpływem na pozostałe.