Model View Controller MCV jest sprawdzonym wzorcem na oddzielenie interfejsu użytkownika od warstwy logicznej aplikacji. Pierwotnym celem MVC jest odizolowanie Interfejsu użytkownika i umożliwienie operowania na oddzielonej od widoku warstwie logicznej aplikacji. Powód który zadecydował iż w MVC mamy podział na interfejs użytkownika(widok) i warstwę logiczna jest bardzo instynktowny, każdy z tych komponentów ma inne
zadania i powinien móc być wymienialny bez ingerencji w drugi. Właśnie dzięki takiemu podziałowi możemy dowolnie zmieniać interfejs użytkownika, bez potrzeby ingerencji w warstwę logiczną aplikacji i vice versa. MVC czasem błędnie jest mylone z innymi wzorcami, które mają na celu odseparowanie interfejsu użytkownika od warstwy logicznej, takim jak na przykład „Presentation Abstraction Control”.
MVC składa się z trzech części:
• Model – enkapsulacja danych,
• Widok – przedstawienie danych uzyskanych od modelu, użytkownikowi,
• Kontroler – otrzymuje żądanie i analizuje dane wejściowe, po czym uruchamia odpowiedni model i widok.
Powodami dla jakich wyodrębniamy te trzy warstwy, są zależności między nimi i oddzielne cele. Kontroler analizuje żądanie, model zajmuje się przetwarzaniem danych, widok zaś zajmuje się przedstawieniem ich użytkownikowi.
Tekst przełożony z angielskiego, oryginał znajduje się na:
http://www.phpwact.org/pattern/model_view_controller
Leave a reply