Recensione libro: Beginning Asp.Net MVC 1.0

Recensione di un buon libro sulla programmazione Asp.Net MVC 1.0.

il
Sviluppatore Microsoft .Net, Collaboratore di IProgrammatori

  Scheda del libro:
Autore:
Simone Chiaretta, Keyvan Nayyeri
Prezzo: $ 49,99
Caratteristiche:
576 pagine
ISBN:
978-0-470-43399-7
anno di edizione: 08/2009 
numero dell'edizione: 1
Argomento: Informatica.
Lingua: Inglese
Editore: Wrox

Con l'uscita della versione di Visual Studio 2008 ed il Framework 3.5, sono state introdotte diverse novità, tra esse anche nello sviluppo web con la tecnologia Asp.Net 3.5, in questo nuovo ambiente di sviluppo dopo qualche mese sono stati rilasciati nuovi modelli, per la creazione di particolare pagine web, chiamato appunto MVC. Il libro Beginning Asp.Net MVC 1.0 http://www.wrox.com/WileyCDA/WroxTitle/Beginning-ASP-NET-MVC-1-0.productCd-047043399X.html edito della casa editrice Wrox  http://www.wrox.com fornisce le basi per utilizzare questo nuovo modo di scrivere applicazione web, un nuovo approccio per la presentazione e gestione dei dati.

Il libro è scritto in lingua inglese ed il linguaggio di programmazione utilizzato in questo libro è C#.

Il libro è composto da 19 capitoli e da due appendice, un libro composto da oltre 500 pagine al termine di ogni capitolo si trovano le esercitazioni per verificare il proprio livello di apprendimento.

Nel libro non si trova nessun CD-Rom o Dvd, i sorgenti utilizzati nei vari capitoli si possono scaricare dal seguente sito  http://www.wrox.com/WileyCDA/WroxTitle/Beginning-ASP-NET-MVC-1-0.productCd-047043399X,descCd-DOWNLOAD.html

Il libro è scritto da due autori con alle spalle molti anni di esperienza di programmazione sulla tecnologia .Net ed in particolare Asp.Net.

Simone Chiaretta è un Microsoft MVP  ed è esperto sulla tecnologia Asp.Net, vive e lavora a Milano presso una società d'informatica, autore di diversi articoli, il suo blog in lingua italiana può essere consultato al seguente indirizzo seguente indirizzo http://blogs.ugidotnet.org/piyo/Default.aspx mentre quello in lingua inglese da qui http://codeclimber.net.nz/ .

Keyvan Nayyeri,  è una persona esperta sullo sviluppo web, con la tecnologia Asp.Net, ha scritto numerosi articoli e libri. Il suo blog può essere consultato al seguente sito http://nayyeri.net/ http://nayyeri.net/ .

 

Ma vediamo in dettaglio i vari capitoli che fanno parte di questo libro.

Come in ogni libro che si rispetti, il primo capitolo viene fornita una valida introduzione sul pattern MVC (Model View Controller), fornendo inizialmente e brevemente la storia di questo paradigma, per poi illustrarne l'architettura.  Un capitolo più corto degli altri ma che vuole fornire le basi su questo nouvo modo di sviluppare le applicazioni web.

Con il secondo capitolo, si passa ad un confronto tra la programmazione web con Asp.Net e la programmazione web basata tramite il concetto di MVC. Nel capitolo sono fornite le differenze dell'uno e dell'altro modo di scrivere applicazioni. Dopo una valida spiegazione si passa ad esempi concreti, illustrando la creazione di una semplice applicazione Asp.Net MVC.

Nel terzo capitolo, si passa finalmente alla pratica, mentre i primi due capitoli erano molto teorici, fornendo al lettore le basi di questo nuovo approccio, con il terzo capitolo vedremo esempi pratici, vedremo come iniziare a scrivere applicazioni Asp.Net 3.5 MVC. Dopo una breve introduzione sulla piattaforma VS 2008 ed i modelli messi a disposizione, sono illustrati i primi passi da compiere per creare le prime applicazioni. Le varie pagine e cartelle che crea l'ambiente di sviluppo Visual Studio 2008 nel progetto, i file di configurazione, ed altro ancora. In questo capitolo si trovano diverse immagini, per dare la possibilità al lettore che si sta avvicinando per la prima volta di comprendere nel modo migliore i primi passi da svolgere.

Nel quarto capitolo, viene illustrato il concetto di modello, nelle prime pagine viene fatta una buona introduzione di questo tema, successivamente si passa ad esempi pratici riguardante la gestione dei dati tramite il modello Linq to Sql. In queste pagine vengono forniti al lettore esempi pratici su questo nuovo modo di gestire i dati. Il capitolo si basa sulla gestione dei dati, dove nelle prime pagine troviamo una valida spiegazione, continuando a leggere il capitolo viene illustrando l'utilizzo di Ado.Net e le varie classi (sqlConnection, sqlcommand, ecc) per la gestione di un database Sql Server. Gli autori del libro cercano di fornire al lettore tutto le nozioni che c'è da sapere sulla gestione dei dati, continuando a leggere il capitolo si passa ad altre tecniche per la gestione dei dati, terminata la parte di Ado.Net, sono riportati numerosi esempi di codice ed immagini di utilizzo di Ado.Net Entity Framework. La parte conclusiva del capitolo è dedicata alla gestione dei file xml, come fonte dati.

Nel quinto capitolo si passa al concetto del controller. Dopo una breve introduzione vedremo come creare il nostro primo controller, la definizione delle azioni, i vari attributi e l'oggetto ViewData. Gli autori, illustrano con esempi pratici questo tema, fin dalle prime pagine. Nel capitolo si trovano ottimi spunti e viene affrontato anche la gestione delle informazioni in cache.

A questo punto, non resta che l'ultima parte di questo pattern, nel sesto capitolo, viene illustrato la parte riguardante il view, ossia la visualizzazione. Il capitolo inizia con una brevissima introduzione, per passare subito alla pratica. Viene illustrato al lettore come creare la sua prima pagina di tipo view, successivamente si passa alla parte del codice, illustrando anche la coesistenza con le master page, l'utilizzo del codice Javascript, ed altri interessante tecniche come quella della creazione di un'azione per la modifica. Il capitolo è molto ampio ed è corredato da numerosi esempi di codice che illustrano i vari scenari che si possono incontrare durante lo sviluppo software con questo nuovo approccio.

Nel capitolo settimo, si passa al routing, la gestione dell'url. Dopo una brevissima introduzione in cui viene illustrato il concetto di routing, si passa ad esempi di codice. Nel capitolo sono illustrate esempi di codice sull'utilizzo delle proprietà, regular expression, messe a disposizione dalle classi per la gestione del routing. Nella parte conclusiva viene illustrata brevemente come effettuare il debuger route. effettuare In tutti questi capitoli, il lettore avrà compreso l'utilizzo e la padronanza della creazione di applicazioni web basandosi tramite il paradigma MVC.

Nel capitolo ottavo, si passa alla parte riguardante i test, ed in particolare sono illustrate le tecniche riguardante unit testing. Nelle prime pagine viene illustrato in maniera adeguata il concetto di unit testing, successivamente alla spiegazione si passa alla scrittura di test tramite l'ambiente di sviluppo Visual Studio. Nel capitolo viene illustrato come utilizzare gli strumenti messi a disposizione da Visual Studio 2008.

Nel capitolo nono, continua la parte dei test, argomenti e temi molto importanti. Nel capitolo viene illustrato al lettore come effettuare il test delle applicazioni Asp.Net MVC. Il capitolo inizia con la creazione di un progetto di test per Asp.Net MVC, e successivamente l'utilizzo di classi per effettuare i vari test. Continuando a leggere il capitolo, si passa allo spazio dei nomi System.Web.Abstractions, e le varie classi che si possono utilizzare per testare l'applicazione web. Un capitolo che illustra in maniera molto professionale tale argomento.

Nel capitolo decimo si passa ai componenti.  Nel capitolo è illustrato come utilizzare e creare dei componenti lato server  nelle pagine Asp.Net MVC.  Dopo una breve introduzione per far comprendere al lettore cosa sono ed a cosa servono i componenti server, si passa ad un controllo sever di tipo checkbox e l'associazione dei dati con un controllo gridView. Continuando si passa alla creazione personalizzata di una classe di tipo Html helper ed il suo utilizzo.

Il capitolo 11, illustra il concetto di Action Filters. Il capitolo inizia subito con un esempio pratico riguardante la gestione dei messaggi di errore. Successivamente verranno illustrati numerosi esempi di codice, in cui illustrano la creazione di particolari metodi, i vari attributi da utilizzare, le varie classi messe a disposizioni e la gestione degli errori.

Il capitolo 12, affronta un tema molto interessante per chi sviluppa applicazioni Asp.Net con la tecnologia Ajax. In questo capitolo viene illustrato l'utilizzo di Ajax in ambito di Asp.Net MVC. Nelle prime pagine viene fatta una valida introduzione sulla storia e funzionamento di Ajax e i vari impatti che si hanno con MVC. Viene spiegato brevemente anche jquery.  Le prime pagine permettono al lettore di comprende il tema che si sta trattando. Al termine dell'introduzione si passa con un esempio pratico, aggiungendo nel progetto un riferimento Ajax.  Gli esempi che sono illustrati sono molto semplici, proprio in questo modo fanno comprendere l'architettura di tutte queste tecnologie.  Il capitolo a differenza degli altri è molto breve proprio perché fornisce una breve introduzione.

Con il capitolo 13, si passa al rilascio dell'applicazioni. Infatti ogni programmatore una volta terminato il lavoro, dovrà installare e configurare il sito che ha creato. In questo capitolo viene spiegato come effettuare il deploy, ossia il rilascio del proprio progetto web. Nelle prime pagine troviamo una buona introduzione e spiegazione delle varie situazioni che si verificano nel momento in cui andiamo a rilasciare su un altro pc o server il nostro sito web. Inoltre sono spiegati gli accorgimenti da prendere in fatto di sicurezza. Nella parte finale troviamo diverse linee guida di come pubblicare il nostro sito web, o tramite la pubblicazione di Visual Studio o tramite la creazione di un pacchetto di installazione web.

Uno dei temi più importanti dello sviluppo web è senz'altro la cache. Nel capitolo 14 viene illustrato l'utilizzo della gestione della cache in Asp.Net MVC. Nelle prime pagine viene fatta un'introduzione per poi passare ad un esempio pratico. Nel capitolo si trovano interessanti spunti su questo argomento.

Con il capitolo quindicesimo si passa alle autorizzazioni e autenticazioni. Nelle prime pagine viene fatta una valida introduzione sia dal punto di autorizzazioni che autenticazione, i ruoli e le varie classi messe a disposizione dal framework. Terminata la parte introduttiva si passa a vari esempi di codice. Nei primi esempi viene illustrato la parte delle autorizzazioni e ruoli. Continuando si passa al tag relativo membershp e rolemanager, tutti tag del file di configurazione per la gestione delle autenticazioni. Continuando a leggere il capitolo, troviamo numerosi esempi di codice per autenticarsi al proprio sito.  Un capitolo che copre ampiamente l'argomento sicurezza.

Nel capitolo 16, l'argomento trattato è molto interessante ed avanzato. In questo capitolo viene illustrato come estendere Asp.Net MVC. Il lettore verrà guidato passo dopo passo alla personalizzazione e creazione di pagine che estendono Asp.Net MVC.  Il capitolo è molto ampio, che prende in esame anche l'utilizzo di progetti open source, come Ninject e MvcContrib.

Con il capitolo 17, gli autori, illustrano le tecniche e le attività da svolgere per migrare i propri siti scritti in Asp.Net in Asp.Net MVC.  Nelle prime pagine viene illustrata in maniera approfondita i vari aspetti della migrazione, ed i vari scenari.  Terminata la parte informativa si passa ad un semplice migrazione da una pagina Asp.Net in MVC i vari passi da seguire.

Nel penultimo capitolo (18), viene illustrato un case study, vedremo come sviluppare un sito prendendo una situazione reale che potrebbe verificarsi. In questo caso, vedremo l'utilizzo oltre di Asp.net MVC, anche di Linq to SQL.  La creazione di un blog per la casa editrice WROX, illustrando passo dopo la passo la creazione di un portale sfruttando tali tecnologie.

Nell'ultimo capitolo, il diciannove, viene illustrato un altro case study, che anche in questo caso, oltre alla tecnologia Asp.Net MVC, troviamo l'utilizzo di altre tecnologie o servizi, in particolare in questo capitolo l'utilizzo del servizio web di Flickr, un progetto open source.  In questo caso reale vedremo come creare un sito per la gestione delle immagini, la creazione di actions e views, nonchè l'utilizzo di Ajax e jQuery.

Appendice A. Troviamo l'elenco dei siti riguardante le risorse, progetti utilizzanti nel libro oppure siti di grande interesse.ure siti di grande interesse.

Appendice B. Si trovano le soluzioni degli esercizi che troviamo alla fine di ogni capitolo.

 

Di seguito si riportano i vari capitoli che compongono questo manuale.

1)  The Model-View-Controller Patternnbsp; The Model-View-Controller Pattern

2)  Asp.Net WebForms Vs. Asp.Net MVC

3) Getting Started with Asp.Net MVC

4)  The Model

5) The Controller

6) Thte View

7)  Routing

8) Unit Testing Concepts

9) Testing Asp.Net MVC Applications

10) Components

11) Action Filters

12) Ajax

13) Deployment

14) Leveraging Asp.Net WebForm Features

15) Authentication and Authorization

16) Extending Asp.Net MVC

17) Migrating From Asp.Net WebForms

18) Case Study 1

19) Case Study 2

Appendice A) Resources

Appendice B) Exercise solutions

Conclusioni

Il libro è molto adatto a chi si sta avvicinando alla programmazione Web con questo nuovo approccio. Un libro che fornisce le basi per muoversi in maniera autonoma sullo sviluppo di applicazioni web tramite MVC. Un libro molto utile per chi vuole iniziare a programmare applicazioni Asp.Net MVC. Anche se è scritto in lingua inglese, i vari capitoli sono scritti in modo molto semplice da permettere a chiunque di comprenedere l'argomento, inoltre i numerosi esempi di codice e le varie immagini, aiutano il lettore a comprendere l'argomento che si trattando. Per tanto è consigliato a coloro che conoscono la tecnologia Asp.Net ed il linguaggio di programmazione C# , visto che l'intero libro è scritto con questo linguaggio.