11 dicembre 2018
Home / Marketing / Differenze tra ASP.NET MVC e Web Forms
ASP.Net Web Forms, ASP.Net MVC, NG srl, C#
ASP.Net Web Forms VS MVC

Differenze tra ASP.NET MVC e Web Forms

Differenze tra ASP.Net MVC e Web Forms

ASP.Net, successore in ambito Microsoft del “Classic ASP“, è arrivato nel 2002 e ha cambiato lo scenario in ambito web. Nel 2002 il C# (linguaggio di programmazione orientato agli oggetti sviluppato da Microsoft  all’interno dell’iniziativa .NET) era relativamente nuovo e gli sviluppatori di Visual Basic hanno iniziato a muoversi verso VB.NET.
Questo è quando le Web Forms sono state introdotte con ASP.NET.
5 anni più tardi (2007) è stato introdotto ASP.NET MVC ed ancora una volta lo scenario cambiò.

Terminologia:MVC_Forms_RuntimeBreakdown
Prima di iniziare a parlare delle differenze tra Web Forms e MVC, abbiamo bisogno di conoscere la differenza tra alcuni termini utilizzati per le tecnologie Microsoft:

  • NET Framework – Tecnologia introdotta nel 2002, che include la possibilità di creare eseguibili, applicazioni web e servizi utilizzando C#, Visual Basic e F#.
  • ASP.NET – open source, server-side web application framework che è un sottoinsieme del Framework .NET che si concentra in particolare sulla costruzione di applicazioni web, siti web e servizi web.
  • ASP.NET Web Forms(2002 – in corso) una tecnica di sviluppo proprietaria di  Microsoft per la gestione dello stato e la forma dei dati tra più pagine. asp.net mvc
    La capacità nativa del web sono le pagine state-less mentre Microsoft ha crato la tecnica Web Forms per la creazione di pagine stateful.
  • ASP.NET MVC(2008 in corso) open source web application framework che implementa il pattern Model-View-Controller.

Adesso che abbiamo chiarito la terminologia, passiamo oltre e andiamo nel dettaglio a vedere le differenze tra ASP.NET Web Forms e MVC.

 

 

Differenze tra ASP.NET Web Forms e MVC
Anche se l’MVC è più recente rispetto alle Web Form, ed utilizza il pattern Model-View-Controller, ci sono i pro e i contro su entrambe.

  • Web Forms ha ViewState, MVC non ce l’ha.
    Il ViewState è un meccanismo di gestione dello stato a livello di pagina. Se si dispoine di un certo numero di controlli web lato sertver in una pagina, il vostro ViewState diventerà esageratamente grande.
    L’MVC non dispone di un ViewState. Esso utilizza model/ViewModels per passare da una View ad un’altra.
  • Web Forms ha un modello Code-Behind mentre MVC ha già i modelli.
    Code-behind è un modo per collegare C # o codice VB di una pagina web e di agire sulle loro azioni specifiche quando si verificano sulla pagina. Quando si compila un modulo Web che contiene code-behind, diventa parte del gruppo (o DLL) per rendere il sito funzionale.
    Con MVC, si passano i dati che sono stati già elaborati e vengono consegnati alla View e non avrebbe nessuna logica un’elaborazione successiva.
  • Web Forms ha dei Web Controls mentre MVC no
    Ci sono un sacco di sviluppatori che si lamentavano che in MVC non hanno alcun controllo lato server. Questo è perché sono diventati viziati con la via Web Forms di fare le cose in una pagina. I controlli erano già disponibili per loro e li ha usati. Alla fine, hanno iniziato a costruire i propri controlli server personalizzati.
  • Web Forms e d MVC possono utilizzare le sessioni.
  • Web Form ha IsPostBack mentre MVC ha una GET e … un POST
    Solitamente un neo programmatore Web Form a volte dimentica di includere un “IsPostBack” nel Page_Load della loro pagina. Questo “IsPostBack può sembrare strano ad alcuni sviluppatori web veterani provenienti da PHP o altri linguaggi web.
    L’idea di WebForms è che quando si richiede una pagina, è considerato un GET (visito la pagina la prima volta) e la pagina viene inizializzata.
    IsPostBack viene preso in considerazione quando viene inviato un modulo, o POST; quindi se visito una pagina IsPostBack mi lascia proseguire ed inizializzare la pagina.
    Quando si invia un modulo, il Page_Load rileva che si tratta di un postback e viene saltata la re-inizializzazione della pagina per passare all’evento che ha attivato il postback.
    MVC ha le chiamate standard del protocollo HTTP GET,POST,DELETE e redirects. Quando si fa click su un pulsante di invio dati, i dati vengono presentati al controller il quale gestisce l’elaborazione degli stessi.
  • Web Forms ha un grande “Form”; MVC può avere “Forms” multipli in una pagina.
    Provate ad immaginare immaginare quanto sia difficile andare in un sito web che ha un servizio di JavaScript che contiene un form HTML e suggeriscono si copia e incolla del codice di esempio nella pagina Web Form ASP.NET.
    Non funziona. Perché?
    Se guardate il codice sorgente di un sito Web ASP.NET Web Form, si noterà che subito dopo il tag BODY nel codice HTML, c’è un tag FORM che abbraccia l’intera pagina … DENTRO UNA FORMA!
    MVC permette di avere molteplici FORMS in una pagina.

 

Riguardo a Comunicafacile Staff

Comunicafacile Staff
Azienda informatica giovane e dinamica che si occupa di grafica, web marketing e comunicazione.

Guarda Anche

Instagram fa pulizia

Instagram fa pulizia: addio ai falsi follower

Instagram fa pulizia: addio ai falsi follower Pulizie di Primavera? non proprio… Le pulizie contro …

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *