Sono leggermente in ritardo per parlare di questo argomento, ma meglio tardi che mai. In casi come questi poi, dove le preview sono di casa, è forse quasi un obbligo.

Sto parlando di ASP.Net MVC, il pattern di Model-Controller-View, intorno al quale Microsoft sta sviluppando una parte del suo Framework, disponibile per ora come installazione a parte e quindi non incluso nemmeno nel recente SP1 rilasciato per il framework 3.5.

Il modello MVC consente di realizzare un nuovo tipo di applicazioni web ben differente dal WebForm al quale tutti siamo stati abituati fino ad oggi.
Per diral tutta, mi sembra di essere tornato al vecchio ASP classico, quando, non esistendo affatto il concetto di postback, tutto il processo si svolgeva tra il client che mostrava/intercettava l’azione dell’utente e una pagina server side che si preoccupava di elaborare la richiesta.

Certo, MVC è un pochino più complesso di questo, ma in buona sostanza questo è quello che è successo. Una nuova – netta – separazione dei livelli applicativi. File HTML (pagina aspx) che fa il rendering della pagina (il View), una parte di server-side per eseguire i task (Controller), e la famosa stratificazione e separazione dei dati che vivono per conto loro (Model).
Con questo sistema l’implementazione dei modelli di test è estremamente facilita, quindi non esistono più scuse per incorrere in errore a run-time visto che ora si può verificare tutto durante la fase di sviluppo.

Cosa chiedere di più? La possibilità di utilizzare tutte le nuove tecnologie introdotte nel corso degli anni. Presto detto. Si hanno a disposizione LINQ (Santificate quell’uomo che l’ha inventato) e AJAX tanto per citare le due estensioni più comuni.

Quindi semplice si, ma potente pure !!!

Siamo ancora in Preview, e da dicembre ad oggi si sono succedute ben 4 preview dverse, l’ultima di pochi giorni fa che ulteriormente espanso le possibilità di questo framework.

In sostanza ecco cosa cambia:

  • WebForm: come dicevo sopra non esiste più il concetto di pagina con il postback. Sparisce il viewstate. Si torna al caro buon vecchio form HTML con gli attributi action e method la cui action viene demandata al controler.
  • Controlli Server: chiaramente non esistendo piu’ la logica delle WebForm anche i controlli server principali, non vanno usati. Quindi c’è un ritorno alla input type ….
  • Pagina .aspx: le pagine in questo modello ereditano da System.Web.Mvc.ViewPage e quindi, come potete immaginare, ora abbiamo a disposizione nuovi metodi e nuove caratteristiche, prime fra i quali due estensionsione per la HttpContext e la HttpHandler.

Ci sono ancora moltissime cose da fare, e così, dopo scarso un giorno di lettura le prime perplessità che mi vengono in mente sono tutte rivolte alla sicurezza. Cosa e come ci difende questo nuovo modello da fenomeni come l’URL spoofing o l’HTML e SQL injection. Sono cose che quanto prima vorrò andare a verificare. E poi, cosa succede a quella logica tier che per anni ci hanno inculcato nella testa? Ad un primo approccio con un progetto vuoto, sembra tutto essere davvero tornato al modello ASP. Un sacco di fiile con l’aggiunta di un unico assembly.

Spero di potermici dedicare a sufficienza su questo nuovo e promettente aspetto del framework, quindi anche per mia futura memoria, ecco alcune risorse dalle quali iniziare:

Nel mio piccolo cercherò di contribuire anche io scrivendo man mano che affronto gli argomenti.

Technorati tags: MVC

 

Be Sociable, Share!