Menu

Basta JQuery!

JQuery è stata la libreria che tutto poteva e tutto ha permesso. La sua introduzione nel lontano 2006 ha permesso cose prima impensabili nel mondo dello sviluppo Web, e con una semplicità disarmante. Che sia diventata pressocchè uno standard non è una sopresa. Ma nel 2022 ha ancora senso utilizzare JQuery?

Un utilizzo sconsiderato?

In moltissime codebase, specie dove vengono sviluppati siti o si fa molto sviluppo web frontend, si trova quella parola magica pressocchè ovunque, o il suo alias più utilizzato, il $. In questo periodo sto studiando molto Javascript, ES6 in particolare, e sto facendo parecchi esperimenti. Quando lavoro mi ritrovo spesso pezzi di codice dove si fa qualsiasi cosa con jQuery. Dai plugin più o meno complessi a semplici cambiamenti di classe o di css. Vuoi cambiare colore del testo?

jQuery(".selettore").css("color", "red");

Vuoi aggiungere una classe?

jQuery(".selettore").addClass("nomeClasse");

Per il 90% degli utilizzi che vedo in giro l’utilizzo di jQuery si limita a queste cose. Potrei farne a meno? Certo:

const selettore = document.querySelector(".selettore");
selettore.style.color = "red";
selettore.classList.add("nomeClasse");

Oppure, se devo farlo su più elementi

const selettori = document.querySelectorAll(".selettore");
for (let item of selettori) {
  item.style.color = "red";
  item.classList.add("nomeClasse");
}

Una cosa che è utilizzata in modo pazzesco tramite jQuery è l’esecuzione di codice al termine del caricamento della pagina, il famigerato

jQuery(document).ready(() => {});

Posso farlo senza jQuery? Certo, Javascript mi permette di usare eventi sul DOM, ad esempio posso aspettare che sia caricato l’intero DOM

document.addEventListener("DOMContentLoaded", () => {});

oppure aspettare il caricamento completo

document.load(() => {});

Stesso identico funzionamento, senza utilizzare jQuery.

Ha quindi senso utilizzare jQuery?

Se il solo utilizzo è modificare il DOM con un certo livello di interattività, a mio avviso no. Utilizzare JQuery ha dei pregi, non lo metto in dubbio:

Ma oltre a dei vantaggi si porta dietro una serie di svantaggi

Si guadagna in semplicità, ma ad un costo che non è nullo, per fare sostanzialmente la stessa cosa.

Per eventuali widget e plugin mi rendo conto che sia molto comoda, anche se ad oggi ci sono sistemi nettamente migliori per ottenere un risultato pure superiore. Purtroppo però la stragrande maggioranza delle persone che vedo usare jQuery non lo sfrutta realmente per le sue potenzialità, ma lo usa solo ed esclusivamente per (cattiva) abitudine e accettando, sbagliando, i costi di cui sopra.

Personalmente cerco di stare più lontano possibile da jQuery. Non mi ritorna nulla, non mi migliora la vita e mi lascia la sensazione di non avere il reale controllo della situazione. Lo so, è una ‘bold opinion’, diciamo allora che lo uso talvolta, ma solo per ‘riconoscenza’.