A mio modo di vedere, Jesse Liberty rimane uno dei migliori divulgatori e scrittori di libri di informatica a livello mondiale, e questo libro, dedicato a chi si approccia per la prima volta a C#, ne è l’ennesima conferma.Ed è un peccato che nessuno dei suoi libri sia stato ancora tradotto in italiano.
La cosa comunque non dovrebbe turbare più di tanto, il suo inglese è molto comprensibile, anche senza essere dei madrelingua. Se a ciò si associa un’ottima impaginazione e cura nella realizzazione del libro da parte della O’Reilly, si capisce che ne risulta un ottimo manuale, raccomandabile per tutti (pur avendo un inquietante pesciolone in copertina, ma questa è una consuetudine della casa editrice). Il target, come detto, sono i principianti, meglio però (ovviamente) se con una base di programmazione ad oggetti ed una minima conoscenza su cosa sia il .NET Framework. In tal caso il libro raggiunge la sua massima utilità, esponendo le basi, e qualcosa di più, della versione 2005 (la seconda) di C#, quindi introducendo anche i “Generici” e i “Metodi anonimi”, concetti assenti nella prima versione del 2001.
L’approccio squisitamente didattico si esplica anche nelle numerose domande ed esercizi (con risposte e soluzioni in appendice) presenti alla fine di ogni capitolo, con lo scopo di far meglio assimilare, al lettore, i concetti espressi. Pur dando preferenza a Visual Studio 2005 come ambiente di sviluppo (il secondo capitolo è tutto dedicato ad esso), gli esempi sono tutti del tipo Console Application, in modo da non farsi distrarre da interfacce grafiche e concentrarsi meglio sui costrutti del linguaggio. Solo negli ultimi due capitoli, dedicati alle applicazioni Windows e Web, si impara anche a destreggiarsi nell’ambiente tipico di chi sviluppa questo tipo di soluzioni (e comunque in .NET in generale), aiutati anche da numerose e chiare immagini (praticamente assenti, invece, negli altri capitoli). Un richiamo, tra l’altro molto importante e spesso sottovalutato in altri testi, viene fatto anche nel capitolo 9, dove si spiega come debuggare il proprio codice utilizzando le comode funzionalità offerte da Visual Studio.
Questa è la seconda edizione di questo libro, stampata nel febbraio 2006 (la prima risale al settembre 2002).
Il percorso didattico è quello solito; si parte da un’introduzione su cosa sia C# e come si posiziona nell’universo dello sviluppo Microsoft, per poi dedicarsi (dal terzo capitolo) alle basi del linguaggio. I capitoli non hanno eccessive lunghezze, e consentono di essere appresi in un’ora circa di lettura (si scoprirà che la parte di domande ed esercizi finali occuperanno una buona parte del tempo speso per ogni capitolo). Nulla viene tralasciato: le basi della programmazione ad oggetti occupano i capitoli 6 e 7, mentre le novità 2005 del linguaggio sono introdotte nei capitoli 14 e 17. Il tutto accompagnato da tanti esempi chiari e dettagliati (comprensivi di commenti nel codice).
Una buona parte del libro è dedicata all’appendice contenente le soluzioni alle domande e agli esercizi proposti alla fine di ogni capitolo. Consiglio di non trascurarla, dato che, in un certo senso, costituisce un libro nel libro, ed è molto efficace per fissare i concetti.
Alla pagina si trova la scheda dettagliata del libro, con la possibilità di scaricare in formato Pdf il sommario, l’indice analitico e il capitolo 11 (Inheritance and Polymorphism, 27 pagine). Inoltre sono presenti alcune pagine di errata, che consiglio di scaricare subito e segnarsi sul testo gli errori scovati. Per quanto riguarda il codice sorgente degli esempi si viene reindirizzati alla home page del sito di Jesse Liberty, dove sono presenti i dettagli di tutti i suoi libri (per questo, il file è di circa 1,6 MB).
Per chi, dopo aver letto questo libro, volesse proseguire nell’apprendimento di C#, segnalo il testo “Programming C#” (4a edizione) sempre di Jesse Liberty (Ed. O’Reilly).
Segnalo anche che, inserendo un codice presente nelle ultime pagine, è possibile accedere alla versione completa – scaricabile e stampabile – del libro, ed anche accedere alla sezione “Safari” del sito della O’Reilly, con possibilità di consultare e scaricare capitoli di esempio di tantissimi libri.
Pro
Ottimo esempio di come deve essere un libro per principianti o quasi: chiaro, colloquiale, preciso e ricco di consigli. Ogni dettaglio, anche il più banale, viene spiegato, e le note a margine forniscono un discreto approfondimento dei concetti. Utilissimi gli approfondimenti su Visual Studio 2005 nei capitoli 2 e 9. Ottimi il codice e l’impaginazione.
Contro
Piccoli dettagli rappresentano i piccoli difettucci di questo testo, altrimenti perfetto.
Ad esempio, ogni tanto capita di vedere evidenziate col grassetto alcune parole nel codice degli esempi che in realtà non sarebbero quelle da evidenziare, ma altre (quelle nuove introdotte nella nuova versione dell’esempio stesso). Come anche un paio di errorini scovati, sempre negli esempi, non segnalati nemmeno nei file di errata corrige. Il voto (8,5, non il massimo quindi) riflette anche la sua limitatezza negli approfondimenti degli argomenti trattati. Il libro è rivolto ai principianti, non dimentichiamolo.
Voto complessivo: 8,5/10
Livello: Principiante/Intermedio
Summary
Preface
1. Cap. 1 - C# and .NET Programming
16 - Cap. 2 - Visual Studio 2005
42 - Cap. 3 - C# Language Fundamentals
59 - Cap. 4 - Operators
72 - Cap. 5 - Branching
104 - Cap. 6 - Object-Oriented Programming
115 - Cap. 7 - Classes and Objects
144 - Cap. 8 - Inside Methods
160 - Cap. 9 - Basic Debugging
174 - Cap. 10 - Arrays
194 - Cap. 11 - Inheritance and Polymorphism
218 - Cap. 12 - Operator Overloading
236 - Cap. 13 - Interfaces
266 - Cap. 14 - Generics and Collections
302 - Cap. 15 - Strings
327 - Cap. 16 - Throwing and Catching Exceptions
347 - Cap. 17 - Delegates and Events
374 - Cap. 18 - Creating Windows Applications
410 - Cap. 19 - Programming ASP.NET Applications
435 - Appendix: Answers to Quizzes and Exercises
511 – Index
Titolo: Learning C# 2005, Second Edition
Autori: Jesse Liberty, Brian MacDonald
Editore: O’Reilly
ISBN: 0-596-10209-7
Pagine: 552
Prezzo: 27,59 $ (su Amazon)
Data di uscita: Feb. 2006