Bit a bit, si cresce sempre


Blog di un ingeformatico

Statistiche
  • Views Home Page: 401.254
  • Views Posts: 1.344.839
  • Views Gallerie: 539.373
  • n° Posts: 520
  • n° Commenti: 293
Ora e Data
Archivio Posts
Anno 2017

Anno 2016

Anno 2015

Anno 2014

Anno 2013

Anno 2012

Anno 2011

Anno 2010

Anno 2009

Anno 2008

Anno 2007

Anno 2006

Anno 2005

Recensione libro Beginning T-SQL 2008 (Apress)

Rimango sempre dell’idea che per chi sviluppa in ambito .NET, più se ne conosce di T-SQL, il linguaggio di SQL Server, meglio è.
E mi fa sempre piacere quando ho tra le mani un libro che ne tratta. Se poi il libro è ben scritto ed aggiornato con le ultime versioni, come questo della Apress, la soddisfazione aumenta ancor di più.
Mi piace poi anche il fatto che non sia eccessivamente voluminoso. Circa 400 pagine sono l’ideale per renderlo trasportabile e gestibile senza troppi problemi. L’autrice, Kathi Kellenberger, è un’esperta di SQL Server con parecchi anni di carriera alle spalle, e ha il dono della concisione e della chiarezza espositiva.
È anche pignola il giusto per far sì che il codice sia ottimamente scritto, ben indentato e senza errori, il che non è poco, considerando il fatto che il libro è indirizzato a lettori principianti, che si troverebbero in difficoltà di fronte a refusi o errori negli esempi di T-SQL.
Ma veniamo al contenuto.

Dopo il primo lungo capitolo dedicato all’installazione di SQL Server 2008 (la prima versione, non la R2), ben ricco di immagini e spiegazioni passo per passo, dal secondo capitolo fino al 10 si entra nel merito del linguaggio, partendo dalle basi dell’istruzione Select e procedendo gradualmente verso argomenti più complessi.
Per un lettore principiante, la lettura sequenziale, capitolo dopo capitolo, direi che è d’obbligo. Chi invece ha già esperienza, e vuole approfondire qualche concetto o aspetto del T-SQL, può saltare direttamente alle pagine che lo trattano. Penso ad esempio al capitolo 9, che tratta dei nuovi tipo di dato introdotti con SQL Server 2008: gerarchico, geometrico, geografico, ecc.
L’approccio dell’autrice è “puristico”, ovvero ci si concentra solo ed esclusivamente sul linguaggio: non si spiega infatti come usare il Management Studio, dove si trovano i pulsanti di edit, come ci si collega ad un database, e così via. Quel poco che serve per scrivere le query è riportato nel primo capitolo sull’installazione, poi spetta al lettore, se realmente interessato, scoprire l’ambiente coi propri passi.

Come database ci si riferisce ad AdventureWorks, la corposa base dati introdotta con SQL Server 2005. Alcuni esempi, invece, utilizzano la versione LT, un po’ più maneggiabile.
Personalmente, viste le finalità di questo manuale, avrei utilizzato Northwind, un database senz’altro più semplice ma comunque dotato di tutto ciò che possa servire ad un lettore principiante.
AdventureWorks, infatti, introduce delle complicazioni inutili, come i numerosi schemi su cui sono basate le sue tabelle e che, ai fini dell’apprendimento del T-SQL, sono ininfluenti.

L’impaginazione del testo è molto sobria e professionale, come si vede dall’immagine qua sotto.

Gli esempi di codice sono tutti scritti in grassetto, perfettamente indentati e ben commentati, come in genere accade in tutti i libri della Apress.
L’autrice segue questo approccio. Presenta prima il codice degli esempi, uno di seguito all’altro, e poi ne spiega il funzionamento. Questa tecnica è didatticamente apprezzabile, anche se ho il sospetto che alcuni lettori avrebbero preferito un approccio diverso, ovvero esempio subito seguito dalle spiegazioni, e non ritrovarsele tutte insieme alla fine; ma questo dipende molto dai gusti personali.
Le immagini, a parte il primo, ricchissimi capitolo, sono praticamente assenti, se non solo quelle che riportano l’esito delle query.
I capitoli sono quasi tutti molto lunghi, spesso anche troppo. Ad esempio, i capitoli 7 e 8, forse quelli più complessi, in cui si parla di programmazione in T-SQL, superano le 50 pagine.
Io rimango sempre dell’idea che sarebbe meglio avere capitoli brevi, anche aumentandone il numero. In tal modo si riesce ad iniziare e terminare un argomento in un tempo ragionevole, mentre avendo capitoli così corposi non si riesce a portarli a termine in un’unica lettura, non solo per problemi di tempo ma perché dopo tot pagine lette, inevitabilmente, l’attenzione e la concentrazione decadono.

Consiglierei, magari, di prendere delle pause in occasione dei blocchi di esercizi che l’autrice riporta inframmezzati nei capitoli (fino all’ottavo compreso). Questi esercizi, ovviamente, sono super raccomandabili, dato che la pratica, per l’apprendimento del T-SQL, è di basilare importanza. Le soluzioni, insieme al testo dell’esercizio, sono riportate nell’unica appendice del libro.

Originale l’ultimo, brevissimo, capitolo in cui l’autrice spiega come procedere nell’apprendimento successivo: forum, blog, conferenze, “googlate” e così via, tutto riportato sotto forma di consigli e suggerimenti.
Delle vere e proprie chicche sono le ultime pagine di ogni capitolo in cui ci si sofferma a valutare questioni legate alle performance delle query. Ai fini della velocità di esecuzione, è meglio scrivere il codice in questo modo o in quest’altro? Questo è un aspetto spesso sottovalutato anche da sviluppatori esperti, e avere una base di conoscenza su questi aspetti può fare davvero la differenza.

Ovviamente, come si può intuire, questo è un libro per sviluppatori, non per sistemisti. Non vengono infatti affrontati aspetti legati a SQL Server in quanto motore di database. Autenticazione, protezione, backup e via discorrendo sono tutti campi che non vengono trattati.

Il codice sorgente scaricabile dal sito della Apress è racchiuso in un file molto piccolo (soli 35 Kb), ed è ben separato per capitoli (a parte il primo), come appare nell’immagine qua sotto.

In ogni cartella c’è un unico file .txt racchiudente tutti gli esempi del capitolo. In tal modo è semplice ed immediato fare un Copia&Incolla nel Management Studio per provarli direttamente sul campo.

Esteticamente il libro si presenta bene, è robusto sia come copertina che come carta. La rilegatura è forse un po’ troppo rigida per i miei gusti.

La cura realizzativa è notevole. Non ho infatti trovato refusi ed errori, e la pagine delle Errate sul sito della Apress riporta solo queste.

Per concludere direi che la lettura di questo libro è stata un’esperienza davvero piacevole. È sicuro che anche chi conosce già abbastanza bene (lasciamo fuori giusto i pochi “guru” del linguaggio) troverà qualche dettaglio di cui non era a conoscenza, e le pagine dedicate alle questioni di performance sono delle vere ciliegine sulla torta che non si trovano in altri libri analoghi a questo.
Per un lettore interessato ad imparare le basi, ed anche qualcosa in più del T-SQL, questo libro rappresenta un valido investimento, considerando anche il prezzo più che accessibile (meno di 30 euro), come si vede da quanto riportato su Amazon Italia.


PRO

Inglese molto comprensibile, esempi di codice ben fatti e ottimamente indentati, spiegazioni sempre accurate e precise, quasi assenza di refusi ed errori e buona copertura anche degli argomenti un po’ più avanzati del T-SQL: questi sono i pregi di questo valido manuale. Le pagine dedicate alle migliori scelte in ottima “performance”, fanno la differenza tra questo libro e tanti altri.

 

CONTRO

Non ci sono grossi difetti; personalmente avrei diminuito leggermente alcuni capitoli molto lunghi spezzandoli in due, e avrei dedicato un po’ più spazio alle stored procedure. La rilegatura è un po’ rigida, ma è un problema che affligge quasi tutti i libri della Apress.

 

Voto complessivo: 8/10

 

Lettore: Principiante/Intermedio

 

Sommario

Contents at a glance

Contents

About the Author

About the Technical Reviewer

Acknowledgments

Introduction

1 – Chapter 1: Getting Started

37 – Chapter 2: Writing Simple SELECT Queries

79 – Chapter 3: Using Functions and Expressions

117 – Chapter 4: Querying Multiple Tables

151 – Chapter 5: Grouping and Summarizing Data

183 – Chapter 6: Manipulating Data

221 – Chapter 7: Understanding T-SQL Programming Logic

269 – Chapter 8: Moving Logic to the Database

317 – Chapter 9: Working to the New Data Types

343 – Chapter 10: Writing Advanced Queries

375 – Chapter 11: Where to Go Next?

379 – Appendix: Solutions to the Exercises

427 - Index

 

Categoria: Books
martedì, 22 feb 2011 Ore. 10.00

Messaggi collegati


Mappa
Calendario
dicembre 2017
lmmgvsd
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567
Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003