Razlika između inačica stranice »Model–view–controller«

bez sažetka
No edit summary
[[Datoteka:ModelViewControllerDiagram2.svg|thumb|350px|'''MVC koncept'''. Puna crta prikazuje direktnu povezanost dok isprekidana prikazuje indirektnu povezanost kroz promatrača ]]
'''Model–View–Controller (MVC)''' je obrazac softverske arhitekture. Koristi se u [[softver|softverskom]] inženjeringu za izoliranjeodvajanje pojedinih dijelova aplikacije u komponente ovisno o njihovoj namjeni.
Model se sastoji od podataka, poslovnih pravila, logike, i funkcija ugrađenih u [[programiranje|programsku logiku]] (business logic). View odnosno pogled je bilo kakav prikaz podataka kao što je obrazac, tablica ili dijagram. Moguć je prikaz podataka kroz više različitih pogleda. Controller ili upravitelj prihvaća ulazne naputke (input) i pretvara ih u naloge modelu ili pogledu. Ovakva arhitektura olakšava nezavisan razvoj, testiranje i održavanje određene [[aplikacija|aplikacije]].
 
MVC se sastoji od tri cjeline
 
:* '''Model''' - podatci i poslovna logika određene aplikacije
;Model
:podatci i poslovna logika određene aplikacije
 
:* '''Pogled''' (View) - prikaz predhodno modeliranih podataka
;View
 
:prikaz predhodno modeliranih podataka
:* '''Upravitelj''' (Controller) - upravlja korisničkim zahtjevima
 
 
==Međudjelovanje komponenata==
Osim podjele aplikacije u tri vrste komponenti, Model-View-Controller (MVC) dizajn utvrđuje interakcije između njih.
* '''Upravitelj''' može slati naloge modelu kojima ažurira njegovo stanje (npr., uređivanje dokumenta). Također može slati naredbe u poglede kojima mijenja prikaz modela (npr., kretanje kroz dokument).
 
* '''Model''' dojavljuje sebi pridruženim pogledima i upraviteljima kada je došlo do promjene u njegovom stanju. Ove dojave omogućuju pogledu da prikaže obnovljeno stanje modela, a upravitelju promjenu dostupnog skup naredbi.
 
* '''Pogled''' zahtjeva od modela informacije potrebne za stvaranje prikaza modela korisniku.
 
;Controller
:upravlja korisničkim zahtjevima
 
== Poveznice ==
13

uređivanja