In occasione di pubblicazioni come questa mi domando come faccia Matthew MacDonald a trovare tutto questo tempo (ed energia) per scrivere tomi del genere, spesso anche prima che esca il prodotto in questione. Questo, a quanto mi risulta, è stato il primo libro su ASP.NET 3.5 pubblicato.
Tale signore di Toronto infatti, non solo ha dato alle stampe queste 900 e passa pagine dedicate a chi inizia o ha ancora esperienza in materia di sviluppo web con ASP.NET, ma ha pubblicato la versione del libro dedicata a chi voglia approfondire di più l’argomento (“Pro ASP.NET 3.5 in C# 2008”), tra l’altro ancora più voluminoso, ed il tutto più o meno negli stessi mesi.
Il libro a cui mi riferisco in questa recensione è il “Beginning” della serie, ovvero, come dice il nome, il manuale di riferimento per chi ha poca esperienza in materia, e necessita di essere accompagnato alla scoperta dell’ultima versione delle pagine ASP.NET, la 3.5, utilizzando C# come linguaggio.
Esiste anche la versione del libro in VB 2008, sempre dello stesso autore (non poteva essere altrimenti!). Data la consistenza del volume, viene comunque fornita una “copertura” piuttosto importante di tutti gli argomenti, e in gran parte delle occasioni o dei progetti su cui si ha a che fare, risulta più che sufficiente.
Personalmente ho avuto questo libro circa 6 mesi fa, ma l’ho letto a sprazzi, non in maniera sequenziale. Ogni volta che mi serviva rinfrescare (e magari anche approfondire) certi argomenti (caching, user control, controlli data-bind, validazione, ecc.) mi sono letto solo il capitolo in questione. Anche se poi nella lettura ritrovavo concetti già conosciuti, sparse qua e là c’erano delle piccole perle di saggezza o trucchi del mestiere che potevano tornarmi utili, e mi ripagavano in qualche modo del tempo speso per la lettura. A proposito del tempo: pur essendo i capitoli non lunghissimi (il più vasto – il 15esimo, dedicato ai fondamenti di ADO.NET – raggiunge le 54 pagine) richiedono lo stesso un discreto margine di tempo per essere letti.
Data la mole del libro, un buon approccio, almeno per chi non è proprio a digiuno dell’argomento, è di scegliere un capitolo ed aumentare le proprie conoscenze su quell’argomento.
Ovviamente chi inizia è meglio che lo legga in maniera sequenziale, capitolo dopo capitolo, data anche la struttura (ormai collaudata) di questo genere di testi, in cui ogni capitolo si basa sulle conoscenze apprese in quelli precedenti.
La prosa dell’autore è un pelino (si può dire?) prolissa, e in certe occasioni si dilunga forse un po’ troppo. Bisogna dire però che l’inglese utilizzato è davvero facile e leggibile, e in rare occasioni sono dovuto ricorrere al dizionario per scoprire il significato di una parola mai vista prima.
Ma veniamo al contenuto.
I primi tre capitoli sono prettamente introduttivi. Il breve capitolo 1 spiega a grandi linee cosa è il .NET Framework, come e perché è nato, elencandone i pregi ed anche (perché no) i difetti. A differenza di tanti altri testi non si fanno paragoni con altri linguaggi e piattaforme (personalmente lo ritengo un bene, magari per altri è una carenza). Siccome il linguaggio utilizzato in tutto il codice del libro è, come detto, C# (come dice anche il titolo), il secondo capitolo (33 pagine) è una sorta di “bignami” del linguaggio, in modo da porre tutti i lettori sullo stesso livello, anche quelli che conoscono poco il linguaggio per eccellenza di .NET.
Il terzo capitolo (31 pagine) prosegue ed amplia il discorso, entrando nel merito della programmazione ad oggetti. Anche per chi già conosce il C#, consiglio di leggere ugualmente questi capitoli. Oltre ad effettuare un buon ripasso, cosa che non fa mai male, ci sono tanti piccoli box (su sfondo grigio) riportanti trucchi e consigli dell’autore, spesso sconosciuti (o dimenticati) anche a lettori esperti. Lo stile di scrittura dell’autore inoltre è chiarissimo, fluente ed informale, ed è un vero piacere leggerlo.
Al termine di ogni capitolo non sono presenti esercizi o quiz di sorta, ma solo un breve paragrafo (“The last word”) riportante le considerazioni finali.
Il testo è aggiornato; sono presenti infatti alcune nuove “feature” di C# 3.0, quali le “automatic properties” e la nuova keyword “var”. Purtroppo il codice non è sempre perfetto; a pag. 60 e 69 ci sono un paio di errori in cui il lettore attento (e sufficientemente conoscitore di C#) saprà porre le dovute correzioni (non ancora presenti nella sezione “Errata” del sito della Apress). La cosa comunque lascia un po’ di stucco, considerando che quasi tutti i libri di questa casa editrice hanno un revisore tecnico (non un semplice correttore di bozze, ma un competente sviluppatore), oltre all’autore stesso, e quindi dovrebbe essere molto improbabile imbattersi in tali errori, ma tant’è.
Con questi primi 3 capitoli termina la prima parte dedicata all’introduzione a .NET.
Con il capitolo 4 (40 pagine) inizia la corposa (6 capitoli) seconda parte, dedicata alle vere basi dello sviluppo in ASP.NET. Si inizia subito, e come spesso accade anche in libri sul medesimo argomento, con un approfondito tour di Visual Studio 2008. Volendo, questo ambiente di sviluppo, non è strettamente necessario per utilizzare il libro, e il codice in esso presente, con profitto. Sarebbe sufficiente Visual Web Developer Express 2008 (e, al bisogno, affiancato da Visual C# Express 2008 per la creazione di librerie di classi).
Dal quinto capitolo in poi vengono trattati, per un totale di 25 capitoli complessivi, tutto lo scibile necessario per formarsi una solida base su ASP.NET.
Non sto qua a tediare sul contenuto di ogni capitolo. Troppe volte, alla fine, mi rendo conto di aver scritto recensioni un po’ troppo lunghe, quando invece dovrebbero fornire le informazioni essenziali in un limitato tempo di lettura.
La parte scritta è affiancata da un numero non esagerato di immagini, ben posizionate e della grandezza necessaria.
L’ultimo capitolo fornisce una buona base di AJAX, utilizzando, ovviamente, il toolkit della Microsoft.
Se non si ha necessità di leggere tutto il libro, consiglio di non saltare il capitolo 23 dedicato ai componenti, in cui vengono elargiti consigli di buon design (il che non fa mai male) per una tipica architettura a tre livelli.
Anche se il titolo riporta la dicitura “3.5”, il libro è pienamente sfruttabile anche da chi deve “limitarsi” (per esigenze di lavoro, ad esempio) alla versione 2.0. La stragrande maggioranza degli argomenti trattati, infatti, è parimenti applicabile anche alla precedente versione di ASP.NET.
Anzi, per volere essere precisi fino in fondo, questo testo avrebbe meglio meritato il titolo “ASP.NET 2.0”, dato che le vere innovazioni introdotte con la versione 3.5, ovvero un importante controllo databound come il ListView e soprattutto LINQ, non sono stati proprio trattati.
Pur essendo, infatti, un libro per principianti, almeno un accenno, giusto per dare un’infarinatura di questi importanti argomenti, non avrebbe sfigurato.
Il codice sorgente, una volta scompresso, è di circa 10 MB, ed è suddiviso in cartelle, una per capitolo (tranne i primi due).
L’impaginazione è molto buona, come da tradizione Apress, ed gli esempi di codice sono perfettamente indentati. Non ci sono esercizi da svolgere o prove di riepilogo. Non sono presenti nemmeno appendici. Tutto il contenuto è riportato per esteso nei vari capitoli.
Concludendo si può dire che è un ottimo testo per iniziare ad impratichirsi con ASP.NET 2.0/3.5, per passare poi, una volta assimilati i concetti, al testo “Pro”, dove tali concetti verranno ulteriormente approfonditi ed espansi.
Alla pagina http://www.apress.com/book/view/9781590598917 è presente la scheda dettagliata del libro, dove è possibile scaricarsi – in formato Pdf – il primo capitolo, il sommario, e i 3 capitoli dedicati ai Web Service che erano presenti nella precedente versione del libro (quella dedicata ad ASP.NET 2.0) e che sono stati esclusi da questa, in quanto non ci sono state modifiche a questa tecnologia e, in un certo senso, è anche stata rimpiazzata da WCF.
Pro
Vige la regola del “9”. In 900 pagine si possono possedere le conoscenze tecniche sufficienti per realizzare il 90% delle applicazioni web in ASP.NET 2.0/3.5. La prosa utilizzata dall’autore fluisce molto bene, e l’inglese sembra scritto apposta per essere letto anche da chi non è madrelingua. Ottima l’impaginazione e la cura realizzativa generale.
Comoda la rilegatura flessibile, che consente di tenere aperto il libro sulla scrivania malgrado sia un tomo non da poco. Indice analitico dettagliatissimo (ben 64 pagine).
Contro
Tenendo presente che il target di lettore a cui il libro si riferisce sono i principianti o poco più, e che non ci si possono aspettare approfondimenti elevatissimi, non ci sono molti dettagli negativi da riportare. Proprio per essere pignoli, avrei preferito che la parte su ADO.NET fosse stata un po’ più approfondita e meno scritta per principianti assoluti, come invece è, e che avesse trattato anche il ListView (rimandato invece al testo più avanzato, il “Pro”). E soprattutto che si fosse almeno fatto un accenno a LINQ.
Voto complessivo: 8.5/10
Livello: Principiante/Intermedio
Summary
About the Author
About the Technical Reviewer
Acknowledgments
Introduction
PART 1 - Introducing .NET
3 - Cap. 1 The NET Framework
19 - Cap. 2 The C# Language
59 - Cap. 3 Types, Objects, and Namespaces
PART 2 Developing ASP.NET Applications
87 - Cap. 4 Visual Studio
129 - Cap. 5 Web Form Fundamentals
171 - Cap. 6 Web Controls
211 - Cap. 7 State Management
249 - Cap. 8 Error Handling, Logging, and Tracing
295 - Cap. 9 Deploying ASP.NET Applications
PART 3 - Building Better Web Forms
333 - Cap. 10 Validation
355 - Cap. 11 Rich Controls
381 - Cap. 12 User Controls and Graphics
405 - Cap. 13 Styles, Themes, and Master Pages
445 - Cap. 14 Website Navigation
PART 4 - Working with Data
483 - Cap. 15 ADO.NET Fundamentals
537 - Cap. 16 Data Binding
577 - Cap. 17 The Data Controls
617 - Cap. 18 Files and Streams
647 - Cap. 19 XML
PART 5 - Website Security
691 - Cap. 20 Security Fundamentals
725 - Cap. 21 Membership
763 - Cap. 22 Profiles
PART 6 - Advanced ASPNET
789 - Cap. 23 Component-Based Programming
821 - Cap. 24 Caching
855 - Cap. 25 ASP.NET AJAX
891 - Index
Titolo: Beginning ASP.NET 3.5 in C# 2008 From Novice to Professional, Second Edition
Autore: Matthew MacDonald
Editore: Apress
ISBN: 978-1590598917
Pagine: 954
Prezzo: 31,49 $ (su Amazon)
Data di uscita: 15/11/2007