Per chi non le conosce, le Enterprise Library (definite di solito al plurale) sono una collezione di librerie (dll) che Microsoft rilasciò nel 2006 per aiutare gli sviluppatori in una serie di compiti ripetitivi e adatti per praticamente ogni tipo di progetto e applicazione.
Da poco più di un anno è stata rilasciata la versione 5.0, composta dai seguenti “block”:
· Data Access Application Block. Componente per l'accesso ai dati.
· Exception Handling Application Block. Componente per la gestioen delle eccezioni.
· Logging Application Block. Componente per la gestione del logging.
· Caching Application Block. Componente per la gestione custom della CACHE.
· Validation Application Block. Componente per la gestione di regole di validazione.
· Security Application Block. Componente per la gestione della sicurezza e autenticazione.
· Cryptography Application Block. Componente per l'utilizzo della crittografia.
La vera utilità di questa libreria di classi è che segue dei paradigmi di “buona programmazione”, offrendo agli sviluppatori dei percorsi guidati (ma comunque sempre personalizzabili) e sicuri per compiere determinate operazioni. Si pensi al log o alla gestione delle eccezioni. Chi non ha dovuto pensare come gestire queste problematiche?
Le Enterprise Library vengono quindi in soccorso, e sono sviluppate e portate avanti da personale Microsoft, garanzia di affidabilità e sicurezza.
Ovviamente sono gratuite: basta scaricarsele e istanziarle nelle proprie applicazioni in ambito .NET, sia di tipo ASP.NET che WPF, sia Silverlight che WCF.
Tutto sta a capire come si configurano e come si usano, e a questo scopo viene in soccorso questo piccolo libro, uno dei pochissimi titoli disponibili su questo argomento.
Nelle sue meno di 250 pagine si cerca di offrire una sufficiente infarinatura sui componenti di questa libreria di classi, offrendo semplici esempi di utilizzo e cercando di mettere il lettore nella mentalità più consona al loro utilizzo (riutilizzo del codice, buone regole di programmazione, ecc.).
Questi sono i blocchi trattati, con tra parentesi il capitolo di appartenenza e il numero di pagine dello stesso:
-Data Access (Capitolo 2 – 37 pagine)
-Exception Handling (Capitolo 3 – 27 pagine)
-Logging (Capitolo 4 – 31 pagine)
-Caching (Capitolo 5 – 24 pagine)
-Validation (Capitolo 6 – 38 pagine)
-Cryptography (Capitolo 7 – 14 pagine)
-Security (Capitolo 8 – 16 pagine)
Personalmente ho trovato questo libro quasi irrinunciabile per capire come utilizzare il “block” del logging, e in seconda battuta sono poi passato alla validazione e alla gestione delle eccezioni.
Credo che i block relativi alla crittografia, al caching e alla security saranno quelli forse meno richiesti per la creazione di piccole e medie applicazioni, mentre la parte di accesso ai dati la si può posizionare in uno step intermedio.
Per chi si approssima per la prima volta alle Enterprise Library raccomando di leggere con moltissima attenzione il primo capitolo dedicato alla configurazione dei block.
Se si salta questa fase e si passa subito a leggere il capitolo a cui si è interessati (il logging nel mio caso) si scoprirà che gli esempi di codice mostrati non compilano. Questo, appunto, perché si è saltata la necessaria fase di configurazione dei block, e tutta la difficoltà (se così si può chiamare) nell’uso delle E.L. risiede nella loro corretta configurazione.
L’impaginazione offerta dalla Microsoft Press è sobria ma molto curata. Viene data molta importanza all’uso del grassetto. Data la natura dell’argomento trattato, ci sono molte parole chiave, e ritrovarsele evidenziate in questo modo aiuta molto nella lettura. Il codice, oltre ad essere ben indentato, si dipana su box con sfondo in azzurro chiaro, e di questo colore lo sono anche i titoli dei paragrafi, rendendo in tal modo il libro quasi a colori.
Avrei solo preferito un font con le grazie, tipo il Times New Roman (il mio preferito), ma quello utilizzato rimane comunque ben leggibile e della dimensione giusta (non troppo grande).
Le poche immagini presenti sono chiare e definite, e la rilegatura sorprende piacevolmente per la sua flessibilità.
La carta invece, pur non velina, è molto delicata, ed un uso intenso del libro ne pregiudica di parecchio la vita utile.
Ovviamente, per poter sfruttare al meglio questo libro, conviene scaricarsi la libreria da CodePlex.
Il codice sorgente scaricabile (in formato .msi) è di circa 11 MB, e crea tutta una serie di alberatura di voci nel menu Programmi del proprio Windows.
Per concludere, vista la scarsezza di documentazione sulle Enterprise Library, questo libro diventa quasi indispensabile per iniziare ad usare la libreria con un certo profitto, senza doversi limitare a smanettare a caso per capire come funziona. Apprezzabile la realizzazione tecnica: l’azzurro degli sfondi del codice e dei titoli dei paragrafi risulta molto carino e piacevole.
Avrei solo dato maggiore spazio al primo capitolo dedicato alla configurazione, aggiungendo più immagini e spiegazioni. Questa fase, infatti, è critica per poter iniziare senza ritrovarsi con tonnellate di problemi di compilazione.
PRO
Guida necessaria, facile da seguire e ben impaginata, per prendere pratica con le Enterprise Library. Le piccole dimensioni e il linguaggio comprensibile anche dai non madrelingua inglese aiutano nell’apprendimento.
CONTRO
Sarebbe servito un maggior approfondimento nella fase iniziale di configurazione, proponendo diversi scenari di utilizzo e personalizzazione.
Voto complessivo: 7/10
Lettore: Intermedio
Sommario
Preface
1 – Cap. 1: Welcome to the Library
25 – Cap. 2: Much ADO about Data Access
61 – Cap. 3: Error Management Made Exceptionally Easy
89 – Cap. 4: As Easy as Falling Off a Log
121 – Cap. 5: A Cache Advance for Your Applications
145 – Cap. 6: Banishing Validation Complication
183 – Cap. 7: Relieving Cryptography Complexity
197 – Cap. 8: An Authentic Approach to Token Identity
213 – Appendix A: Dependency Injection with Unity
225 – Appendix B: Dependency Injection in Enterprise Library
231 – Appendix C: Policy Injection in Enterprise Library
233 – Appendix D: Enterprise Library Configuration Scenarios
241 – Appendix E: Encrypting Configuration Files
243 – Index
Su Amazon Italia viene offerto a 22 euro, una spesa tutto sommato molto contenuta.