In Italia lo conosciamo come
jQuery: Guida Completa, traduzione italiana di
jQuery: Novice to Ninja. Già dal titolo si intuisce lo stile del libro: un linguaggio informale, ricco di esempi, visivo, chiaro ma mai banale.
La guida è scritta a quattro mani da due autori australiani:
Earle Castledine (co-creatore di
TurnTubelist e conosciuto come "Mr. Speaker") ha ricoperto il ruolo di Senior Systems Analyst e che, attualmente, si occupa di sviluppo mobile a Parigi;
Craig Sharkie, dopo una laurea in Belle Arti, ha collaborato con alcuni dei più grandi protagonisti del Web come Microsoft, Yahoo!, AOL, Atlassian e oggi Telstra.
L'
approccio creativo allo sviluppo si allinea perfettamente alla specificità del framework: la ricerca continua della soluzione più semplice. Il loro "manifesto" è infatti dichiarato già dalla prime pagine:
"Diventare un ninja non riguarda l'apprendimento di un'API in tutti i suoi aspetti, perché in questo caso si tratterebbe solo di avere buona memoria. La competenza e il valore effettivi emergono quando potete applicare la vostra conoscenza per creare qualcosa di eccezionale, qualcosa che si basa sulle intuizioni del passato e che si dimostri migliore di quanto è stato fatto in precedenza. Non è certamente facile, ma grazie a jQuery, è divertente anche solo provarci".
Emerge chiaramente che
jQuery può essere considerato come lo strumento che unisce gusti diversi in fatto di sviluppo: quelli del programmatore "pigro", che ha poca voglia di scrivere lunghe e complesse righe di codice e che invece punta alla pulizia e al pragmatismo della scrittura, requisiti che per lui coincidono con l'eleganza, e le attuali esigenze dei web designer, che puntano, allo stesso modo, alla pulizia e all'eleganza dell'interfaccia.
Nonostante la quantità degli argomenti trattati la guida conta solo 300 pagine, divise in 9 capitoli e 3 appendici riguardanti materiale di riferimento di
jQuery (support, AJAX, ecc.) e un po' di sintassi di base di JavaScript. I 9 capitoli, invece, si muovono progressivamente dai concetti di base per i novizi (selezione e manipolazione degli elementi sul DOM, animazioni, creazioni di gallerie di immagini e di menù, ecc.) fino ad argomenti più avanzati, dove si può puntare a diventare "Ninja" (AJAX, template lato client, validazione di form in modo dinamico, creazione di plug-in, ecc.).
Il
primo capitolo introduce il lettore a
jQuery focalizzando l'attenzione su quelli che sono i punti di forza dell'utilizzo di un framework. Si vedranno ancora in che modo includere il framework, qual è l'autonomia di uno script e una panoramica sul DOM.
Con il
secondo e il terzo capitolo si entra nel vivo di una delle funzionalità di punta del framework: le animazioni.
jQuery, al fine di mantenere un
footprint di base molto piccolo, demanda queste funzionalità a una
libreria esterna.
Con il
terzo e il quarto capitolo il lettore capirà come scrivere i primi widget da integrare nei propri siti web. Verrà spiegato in che modo scrivere da zero alcuni tra gli elementi più comuni dei siti web attuali:
lightbox e
slideshow. Il libro introduce anche l'utilizzo di alcuni plug-in come
Tabs,
Accordion e
Jcrop.
L'intero
capitolo sei è dedicato a AJAX: viene introdotta la tecnologia che ne sta alla base e il modo in cui recuperare i dati attraverso la libreria. Nel capitolo si vedrà ancora un esempio su come interagire con le API di Twitter e in che modo sviluppare una raccolta di immagini dinamica, corredata di uno strumento per aggiungere tag alle immagini senza effettuare aggiornamenti sulla pagina.
I due capitoli seguenti illustrano come applicare gli argomenti fin qui esposti al fine di arricchire le applicazioni web e rendere l'esperienza utente più completa possibile. Nello specifico il
capitolo sette approfondisce tutti gli aspetti inerenti i form: controlli di validazione dei dati, widget di autocompletamento, selezionatori di date, utilizzo del drag&drop, ecc.
Il
capitolo otto spiega invece come interagire con gli elementi e renderli selezionabili o ordinarli, la manipolazione di griglie di dati e l'utilizzo corretto delle tanto odiate tabelle.
Nell'ultimo capitolo,
il nono, gli autori spostano l'attenzione dell'utente verso argomenti avanzati di
jQuery. Gli argomenti trattati sono: l'architettura dei plug-in; i modi per estendere
jQuery e la gestione della coda delle animazioni.
Il libro, quindi, non presuppone che il lettore conosca
jQuery, ma una conoscenza di base di JavaScript e della programmazione web agevola non di poco la lettura. Grazie alla differenziazione del grado di difficoltà degli argomenti trattati, chiunque può accedere ai contenuti della guida: chi ha solo competenze di HTML e CSS trova un valido aiuto per cominciare a sviluppare vere e proprie applicazioni web; chi sostiene che JavaScript sia la "bestia nera" della programmazione web dovrà ricredersi e iniziare a utilizzare
jQuery; chi invece lo ha già utilizzato, potrà entrare nel dettaglio della specificità del framework e capire tutti quei meccanismi che solitamente nella quotidianità vengono ignorati.
Forse, l'unico punto debole del testo sono i capitoli un po' troppo lunghi: lo studio di circa 35/40 pagine a capitolo, giusto per non perdere il filo del discorso, può essere un limite non da poco; capitoli più corti sarebbero stati indubbiamente più comodi e memorizzabili anche nelle tarde ore serali (a volte notturne...).
Tuttavia, in un momento di fermento tecnologico,
jQuery sembra cominciare a giocare un ruolo da protagonista — basta fare una ricerca su
Google Trends per vederne la popolarità — e una guida come questa non può mancare nella libreria di uno sviluppatore web.