Se è consentito proporre una candidatura al premio “Bigino di C# dell’anno”, credo che questo libretto della O’Reilly non avrebbe concorrenti diretti di cui preoccuparsi.
È la versione ridotta del famoso e rinomatissimo librone dei due fratelli Albahari “C# 4.0 in a Nutshell”, che avevo recensito a questo post dello scorso 7 giugno.
La recensione scritta per il fratello maggiore la si può applicare anche a questo, dato che è pressoché il sunto dei capitoli 2, 3 e 4 del libro completo, quelli che racchiudono le basi fondamentali del linguaggio.
Chi si ricorda l’uso che nei tempi della scuola si faceva dei “bigini” si ricorderà senz’altro che erano utilissimi per effettuare un ripasso veloce e mirato, mentre erano inutilizzabili come unica fonte di apprendimento, soprattutto per chi non conosceva già l’argomento.
Ecco, questo è lo scopo di questo libretto. Il lettore ideale già conosce il linguaggio, perlomeno nelle sue basi, e lo utilizza come rapida fonte di consultazione nel caso sorga qualche dubbio sull’utilizzo di un costrutto o sulla sintassi.
Lo si può leggere anche sequenzialmente, anzi sarebbe raccomandabile, come ripasso del weekend. Gli autori coprono le basi, e anche qualcosa in più, di C#, e le novità introdotte con la versione 4.0 del framework sono esplicitamente segnalate.
La trattazione, come anche nel libro maggiore, è completamente focalizzata sul linguaggio, e non si fa nemmeno menzione di Visual Studio o di altre tecnologie (WPF, ASP.NET, ecc.), come spesso capita di trovare in altri testi sul C#. Sembra incredibile ma non è presente nessuna immagine: C# puro per puristi.
Gli esempi di codice, quasi tutti molto brevi e mirati, utilizzando il programmino LINQPad, creato dagli stessi fratelli Albahari.
Malgrado sia scritto come utilizzare LINQPad per scaricare al suo interno i file di esempio (presi dai capitoli 2, 3 e 4 del libro maggiore), ho avuto qualche problema nel far funzionare il link.
Ho scritto allora una mail a Joe Albahari e gentilmente mi ha mandato il file zippato degli esempi di codice, ed ho quindi potuto inserirli all’interno del programma senza problemi.
Consiglio comunque di scaricarsi LINQPad, dato che può sempre tornare utile per provare al volo piccoli snippet di codice.
Questo il link: http://www.linqpad.net/
Partendo a scrivere il libro con lo scopo di racchiudere tanti concetti nel minore spazio possibile, gli autori hanno scritto il codice degli esempi quasi sempre mettendo tutto in linea. I metodi, le classi, i cicli, ecc. sono molto compressi. Se da un lato, come si capisce, si risparmia spazio, dall’altro si rende il codice meno leggibile rispetto ad altri libri dove è più espanso.
Gli esempi sono comunque quasi sempre molto brevi, e questo credo non dovrebbe rappresentare un handicap eccessivamente grave. Utilissima l’idea di porre in grassetto le parti di codice aggiunte (rispetto al pezzo di codice mostrato prima, ad esempio), o che meritano un attenzione particolare nel contesto del codice restante.
Molto azzeccata invece la scelta del font del testo: un leggibile Times New Roman di piccola dimensione.
I concetti del linguaggio vengono presentati in difficoltà crescente, per spingersi fino all’uso dei puntatori (notevole per un libretto di queste dimensioni), alle direttive del preprocessore e al codice unsafe, il tutto puntando sempre alla maggiore concisione possibile.
Il sommario è costituito da un unico capitolo che copre tutte le 200 pagine del libretto.
Per cercare gli argomenti a cui si è interessati bisogna spulciarsi i numerosi paragrafi.
Fortunatamente, ed è una buona cosa per un libretto così piccolo, gli autori forniscono un dettagliato indice analitico di ben 16 pagine, e ciò aiuta molto nella ricerca.
La rilegatura è forse un po’ troppo rigida. Considerando anche le dimensioni ridotte del libretto, mi sarei aspettato una maggiore flessibilità; invece serve una certa forza per tenerlo aperto sulla scrivania. In compenso mi si è staccata l’ultima pagina dopo pochi giorni…
Per quanto riguarda errori o refusi, potrei affermare che questo libro ne è immune. Non ne ho infatti trovati, ed attualmente la pagina della Errata sul sito della O’Reilly è vuota.
Concludendo si può dire che questo libretto è l’ideale accompagnamento da tenere nello zainetto e sfogliare nei momenti liberi. Si fa leggere con piacere e arriva subito al sodo, senza troppi fronzoli e giri di parole.
.
PRO
È l’ideale “bigino” di C#, non solo per le dimensioni tascabili. Spiegazioni molto chiare e succinte. Codice breve ed ottimizzato. Data l’elevatissima reputazione degli autori, ogni loro parola può essere considerata come un Vangelo.
CONTRO
La mancata suddivisione in capitoli, e mettere tutto in un unico calderone, può disorientare qualche lettore.
Rilegatura un po’ troppo rigida.
Voto complessivo: 9/10
Lettore: Intermedio
Sommario
- Chapter 1 C# 4.0 Pocket Reference
- Using Code Examples
- How to Contact Us
- Safari® Books Online
- A First C# Program
- Syntax
- Type Basics
- Numeric Types
- Boolean Type and Operators
- Strings and Characters
- Arrays
- Variables and Parameters
- Expressions and Operators
- Statements
- Namespaces
- Classes
- Inheritance
- The object Type
- Structs
- Access Modifiers
- Interfaces
- Enums
- Nested Types
- Generics
- Delegates
- Events
- Lambda Expressions
- Anonymous Methods
- try Statements and Exceptions
- Enumeration and Iterators
- Nullable Types
- Operator Overloading
- Extension Methods
- Anonymous Types
- LINQ
- Dynamic Binding (C# 4.0)
- Attributes
- Unsafe Code and Pointers
- Preprocessor Directives
- XML Documentation