Con i seguenti post provo a chiarire e spero di non aprire dei dibattiti infiniti.
Il primo pattern che andrò a spulciare è quello che potremmo definire: classic MVC
Com’è possibile anche leggere da Wikipedia, questo pattern nasce nel 1979 grazie ad un’idea di Trygve Reenskaug il quale lavorava su Smalltalk.
L’idea alla base è quella di dividere i compiti delle applicazioni in layer, in modo tale da ottenere una chiara divisione tra il domain object e la sua rappresentazione, introducendo così il meccanismo denominato Observer-Synchronization, il quale permette di rappresentare in più punti della nostra applicazione lo stesso domain object senza che questo si preoccupi della sua rappresentazione.
I Layer
Model
Rappresenta il domain object. Può esser ricavata da uno o più DAL gestiti dall’applicazione, ciò significa che i suoi dati possono esser ricavati da un database, da un file xml, da un file testuale o da tutti e tre contemporaneamente.Non esiste un rapporto 1-a-1 con il Controller o con la View.
View
Visualizza la Model. Può essere una Windows Form, una pagina ASPX, come può essere un file di testo o un file XML.La View comunica direttamente con la Model.
Controller
Interpreta gli input dell’utente (mouse, tastierta etc), notifica l’input alla model e/o cambia la view con quella corretta.Questa è l’immagine che ho trovato che meglio rappresenta questa logica:
Seguiamo l’immagine di sopra:
- Il controller riceve un input da parte dell’utente
- Se l’input è valido il comando viene girato alla model
- La model cambia stato
- La view riceve la notifica del cambio di stato
- La view visualizza i dati della model
Se volete altre informazioni fate riferimento pure alle msdn.
Ciao
No comments:
Post a Comment