Applicazioni a 3 livelli con ASP.NET

di: Giuseppe Marchi     28 Novembre 2007

Lo sviluppo di applicazioni Web è una vera e propria art e non solo per quanto riguarda l'aspetto grafico o gli aspetti legati all'usabilità e all'accessibilità. Il cambiamento della percezione del "sito Web" con l'introduzione del concetto di "applicazione Web" e l'evoluzione tecnologica che ne è conseguita, hanno portato ad applicare le metodologie più avanzate di sviluppo delle applicazioni anche a quest'ambito.

Queste metodologie e tecniche ci permettono di costruire applicazioni Web ad un livello prima inimmaginabile, passando per modelli di sviluppo orientati agli oggetti, che fino a ieri, vedevano come campo d'utilizzo solamente le applicazioni desktop.

ASP.NET (e il .NET Framework) è un esempio di piattaforma per lo sviluppo Web interamente basata sul paradigma ad oggetti. Grazie ad esso siamo in grado di progettare applicazioni Web "a strati", dove ad ogni livello concettuale corrispondono azioni ben precise, legate tra loro per il raggiungimento di scopi comuni. Possiamo pensare ad una applicazione come all'intergrazione di componenti a se stanti che comunicano tra loro.

Seguendo questa filosofia, sono nate le applicazioni Web a 3 livelli.

Si fa riferimento a siti Web che vedono divisi tra loro i meccanismi di presentazione, di gestione concettuale dei dati o dei meccanismi di "business", e di accesso fisico al database. Questo approccio favorisce il lavoro in team, in cui ciascuno (o ciascun gruppo di sviluppatori) cura componenti particolari, che saranno assemblati sono in una fase avanzata dello sviluppo.

Un modo di pensare che rimpiazza in modo vincente la più classica programmazione "spaghetti like" che vede markup, logica applicativa e codice per l'accesso ai dati inseriti nel medesimo file.

Come abbiamo annunciato è possibile suddividere gli strati necessari alla produzione del software in almeno 3 livelli:

  • Data Access Layer (DAL) È il livello di interazione con la base di dati legata al sito, dove si effettua fisicamente la connessione e si eseguono query di selezione, inserimento, aggiornamento o cancellazione. Il grado di importanza di questo strato dovrebbe essere chiaro, è in questo strato che si determina l'efficienza della conservazione e della consultazione dei dati.
  • Business Logic Layer (BLL) È il livello di descrizione delle entità logiche che descrivono i processi di business utilizzati all'interno dell'applicazione. Tali entità sono delle classi vere e proprie, con attributi e metodi utili a rappresentare la logica applicativa del proprio sito Web. All'interno di questo strato vengono definite tecniche di gestione dei dati come, ad esempio, il loro inserimento nella cache della pagina o eventuali codifiche o decodifiche. È quindi questo il livello che è in diretta collaborazione con l'interfaccia utente.
  • User Interface (UI) È lo strato di presentazione dell'applicazione. In parole povere è qui che si stabilisce "ciò che si vede", a questo livello viene definita la rappresentazione dei dati e l'interfaccia utente. È qui che usiamo in modo importante pagine e controlli Web e i dati che rappresentano sono forniti dai livelli inferiori.

L'applicazione di questo paradigma ci permette di lavorare meglio in team e di scrivere applicazioni più robuste, che tipicamente offrono maggior scalabilità e facilità nella manutenzione.

Guide ASP.Net

Guida Windows Azure Code Snippets

Le migliori pratiche per far girare le applicazioni "in the cloud",...

Guida ASP.NET MVC Best Practices

Un workflow dettagliato e ricco di suggerimenti pratici per...

Guida ASP.NET Starter Kit

Un modo semplice per imparare ad utilizzare le tecnologie Microsoft...

Altre guide

Newsletter @Microsoft Dev

Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Amministratore di Reti Windows Server 2008

20 Febbraio 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto