jQuery è scritto in JavaScript: una lezione da tenere a mente

jQuery è scritto in JavaScript: una lezione da tenere a mente

Chi come me fa parte di quella fascia di sviluppatori che ha cominciato la programmazione lato client quando sul Web giravano ancora browser come IE5, conosce bene le difficoltà insite nello studio di un linguaggio come JavaScript.

All’epoca ECMAScript era solo una pura utopia riservata ad uno sparuto gruppo di standardisti, i soli ad osare e a ricordare a noi comuni mortali che esisteva qualcosa di più oltre alla snippet con cui implementare la gestione degli eventi in modo cross-browser.

Poi venne Dean Edwards che spianò la strada ad un nuovo modo di concepire JavaScript: meno codice, più produttività . E infine jQuery, che ormai è la libreria JavaScript. Perché jQuery è scritta in JavaScript. O no?

L’unica cosa che noi vegliardi ci sentiamo di rimproverare a jQuery è quello di aver di fatto nascosto gran parte delle “good parts” (Douglas Crockford) di JavaScript e del DOM facendo di fatto credere che per ottenere determinati risultati bastasse semplicemente usare un plugin o copiare ed incollare una delle tante snippet in circolazione. Se per un utente questo va più che bene, per uno sviluppatore è deleterio.

Così facendo infatti lo sviluppatore o chiunque abbia deciso di svolgere questo lavoro pensa erroneamente che jQuery sia un linguaggio di programmazione. Se date un’occhiata ai curriculum, noterete quanto questa errata concezione sia molto diffusa. Ovviamente questa idea si dissolve quando occorre scrivere del codice da zero: JavaScript salta subito fuori e il blocco è inevitabile.

Quindi il consiglio che noi matusa diamo è questo: prima JavaScript, poi jQuery. Prendere una scorciatoia è fin troppo facile, ma sappiate che alla fine di questa strada c’è spesso un vicolo cieco.

Il DOM poi è come una sorta di enigma collettivo irrisolto: se ne sente spesso parlare, ma sicuramente in jQuery viene a galla solo con il metodo element.get() o $(element)[0]. In fondo è un bene che sia così, perché il motto di jQuery è “write less, do more” e l’approccio DOM non brilla certo per concisione.

Tuttavia il DOM è fondamentale: no DOM, no jQuery, no party.

Nel libro “jQuery Cookbook” (O’Reilly) e in molti tutorial l’approccio DOM viene spesso consigliato per risolvere problemi di performance: perché i metodi e le proprietà del DOM sono implementati nel linguaggio nativo del browser e quindi di fatto sono più efficienti di qualsiasi implementazione JavaScript.

Roba già sentita? Si, è vero. Ma quando si tratterà di creare una tabella HTML con più di 1000 righe ci si stupirà di quanto il motto “repetita iuvant” suoni più che attuale.

È una questione di formazione professionale: conoscere gli standard del Web non è solo un hobby da svolgere nei ritagli di tempo, ma fa parte del nostro bagaglio di conoscenze necessarie a svolgere questo lavoro.

Torna su