Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

WebForms vs ASP.NET MVC

Le differenze principali tra i due approcci
Le differenze principali tra i due approcci
Link copiato negli appunti

È bene fare fin da subito una precisazione molto importante: ASP.NET MVC non va a sostituire ASP.NET classico (WebForms). Le due tecnologie sono infatti parallele e adatte a compiti differenti e chi non si trovasse bene con MVC potrà continuare a costruire pagine Web utilizzando WebForms. Lo sviluppo di quest'ultimo infatti continua e per la versione quattro del framework .Net sono attese diverse migliorie.

L'approccio introdotto da ASP.NET MVC presenta diverse differenze rispetto al metodo di lavoro a cui ASP.NET classico ci ha abituati, in particolare per quanto riguarda la scrittura e l'organizzazione del codice.

MVC obbliga infatti lo sviluppatore a suddividere il codice in blocchi dalle funzionalità e compiti ben distinti tra loro. Sebbene questo tipo di organizzazione fosse possibile anche con ASP.NET "tradizionale", ad esempio dividendo il codice nei livelli di Data Access Layer, Business Layer e Presentation Layer, la scelta di applicare o meno questa suddivisione non era dettata da motivazioni tecniche ma dalla scelta dello sviluppatore.

MVC richiede inoltre di scrivere manualmente il codice HTML presente all'interno delle viste, diversamente da quanto accade con ASP.NET classico in cui il codice viene generato automaticamente dai controlli lato server.

Altre differenze verrano via via evidenziate nel corso della guida, nel momento in cui ci troveremo ad avere a che fare con funzionalità che differiscono da quanto eravamo soliti utilizzare con ASP.NET ed il suo motore basato su WebForms.

Confronto tra ASP.NET ed ASP.NET MVC
ASP.NET ASP.NET MVC
Forte strutturazione del codice X
Controlli lato server e gestione automatica postback X
Possibilità di utilizzare i meccanismi di routing X X

Ma come scegliere quale approccio utilizzare? Oltre a una scelta dettata prettamente dal gusto dello sviluppatore, MVC si adatta particolarmente bene a scenari di uso quali blog, cataloghi o gallerie di immagini; in generale potremmo dire per siti che hanno bisogno principalmente di visualizzare informazioni. Per sviluppare pagine che richiedono molte interazioni con l'utente e che hanno bisogno estensivo di form, ASP.NET classico è sicuramente di uso più immediato in quanto propone strumenti (come i controlli lato server o la recente tecnologia Dynamic Data) tesi a semplificare lo sviluppo in questi scenari. Sebbene anche MVC possa essere utilizzato per questi scopi, presenta l'indubbio svantaggio di dover scrivere manualmente il codice HTML e di non gestire in automatico il postback tra le pagine.

Le pagine scritte utilizzando MVC, tuttavia, proprio perchè questa tecnologia richiede la scrittura manuale del markup, avranno un codice HTML più leggero e attinente agli standard rispetto a quelle generate dalla controparte WebForms.

È comunque possibile utilizzare WebForms ed MVC all'interno dello stesso sito, scegliendo di volta in volta quale delle due tecnologie utilizzare per scrivere le pagine. Questa funzionalità permette inoltre di migrare facilmente applicazioni scritte in ASP.NET classico verso il framework MVC e viceversa: potremo infatti effettuare una transizione graduale di alcune parti senza intaccare il funzionamento complessivo del sito internet.


Ti consigliamo anche