Nel luglio 2007 avevo recensito in questo post la versione dedicata a C# 2005 di questo libro (due edizioni fa, quindi) e mi ero trovato molto bene con l’originale modo di esporre l’argomento da parte dell’autore, Daniel Solis.
Credo che il suo modo di spiegare il C# sia unico nel mercato editoriale internazionale.
Viene infatti utilizzato un approccio visuale, tante immagini, grafici, diagrammi, frasi brevi, teoria approfondita solo il necessario e una marea di parecchi piccoli esempi, spiegati ed illustrati con frecce e rimandi.
Chi è abituato a leggere libri Apress – come il sottoscritto – resterà sorpreso nel vedere una quantità inusuale di spazio bianco tra e nelle pagine.
Riporto qua sotto due screenshot di alcune pagine prese a caso, giusto per farsi un’idea.
I 25 capitoli di cui è composto il libro sono di lunghezza molto variabile.
Si passa dalle sole 8 pagine del capitolo 12 “Structs” alle ben 59 del capitolo 21 dedicato a LINQ.
Consiglierei, soprattutto per i principianti e semi-principianti, di dedicare non più di un capitolo al giorno, riflettendo molto su quanto letto e magari procedere ad una rilettura qualche ora dopo.
Nel giro quindi di un mese si dovrebbe aver terminato il libro assimilando il più possibile il contenuto.
Mantengo e confermo le buone impressioni che scrissi nella recensione della precedente edizione.
Dal punto di vista didattico, a parte (forse) il primo sconcerto, è una scelta azzeccata.
L’apprendimento risulta di molto facilitato e prosegue senza fatica.
Gli esempi di codice sono tutti molto brevi e di facile comprensione.
Il file dei sorgenti, pur essendo disponibile sul sito della Apress, perde un po’ di importanza, data la piccolezza degli esempi (l’autore, addirittura, crea una solution per ognuno di essi – forse era il caso di crearne una sola per capitolo, inserendo gli esempi in file di classe separati).
Sono inoltre tutte Console Application: è un libro dedicato al C# da “puristi”, non si parla né di ASP.NET, né di WCF, né di database (e quindi di ADO.NET), né di WinForms, né tutto…
Solo C# puro e basta.
E tra l’altro si sorvola (peccato) su alcuni argomenti che a mio modo di vedere sono essenziali, anche per i programmatori principianti, come ad esempio le Collections (Dictionary, List, ecc.). Di esse ne vengono trattati solo gli array, sinceramente un po’ poco.
Visual Studio 2010 non viene nemmeno menzionato, e nemmeno si fa cenno a come compilare ed eseguire gli esempi proposti (originale questa cosa).
Ecco perché questo libro può essere considerato solo il primo passo di un lungo percorso di apprendimento, che necessiterà di approfondimenti su libri ben più dettagliati e completi.
Chi ha già una delle precedenti edizioni di questo libro si prepari a leggere spesso le stesse frasi e seguire gli stessi identici esempi.
L’autore, infatti, si è scatenato con una grande opera di Copia&Incolla, e la maggior parte dei 25 capitoli sono perfettamente identici a quelli delle vecchie edizioni. In sostanza si è limitato ad aggiungere – come spesso ahimè accade in questa tipologia di libri – solo le parti nuove relative a C# 4.0, ma non ha toccato nulla del resto.
E per questo gli tolgo mezzo voto a questa edizione.
Su Amazon Italia viene venduto, attualmente, con il 23% di sconto.
Qua sotto i dettagli del libro.
PRO
Metodo didattico “visuale” indubbiamente efficace per l’apprendimento di C# da parte dei lettori principianti.
Approccio “puristico” al linguaggio, senza distrazioni sull’aspetto visuale e sugli ambienti di sviluppo.
Inglese estremamente comprensibile anche dai non madrelingua, ed esempi di codice ben scritti e perfettamente indentati. Rilegatura comoda e flessibile.
CONTRO
Viene un po’ trascurato tutto il mondo che ruota attorno a C#, sia come framework che come tecnologie di sviluppo. Completa mancanza delle collections. Chi ha una precedente edizione del libro, avrà circa l’80% delle pagine duplicate.
Voto complessivo: 8,5/10
Lettore: Principiante/Intermedio
Sommario
1 - Cap. 1.C# and the .NET Framework
15 - Cap. 2.Overview of C# Programming
31 - Cap. 3.Types, Storage and Variables
49 - Cap. 4.Classes: The Basics
67 - Cap. 5.Methods
109 - Cap. 6.More about Classes
161 - Cap. 7.Classes and Inheritance
201 - Cap. 8.Expressions and Operators
239 - Cap. 9.Statements
269 - Cap. 10.Namespaces and Assemblies
297 - Cap. 11.Exceptions
317 - Cap. 12.Structs
327 - Cap. 13.Enumerations
341 - Cap. 14.Arrays
369 - Cap. 15.Delegates
391 - Cap. 16.Events
409 - Cap. 17.Interfaces
435 - Cap. 18.Conversions
465 - Cap. 19.Generics
505 - Cap. 20.Enumerators and Iterators
537 - Cap. 21.Introduction to LINQ
627 - Cap. 22.Introduction to Asynchronous Programming
639 - Cap. 23.Preprocessor Directives
663 - Cap. 24.Reflection and Attributes
663 - Cap. 25.Other Topics
693 – Index