Abbiamo ancora bisogno di jQuery o dovremmo attenerci allo script?
- Link originale: https://magazine.joomla.org/all-issues/february-2025/do-we-still-need-jquery-or-should-we-stick-to-the-script
- Tradotto da:: Pietro Strada
Quando jQuery è emerso nel 2006 è stato uno dei pochi framework che ha permesso agli sviluppatori di scrivere Javascript più velocemente utilizzando la scorciatoia per le funzioni e consentendo il daisychaining per ridurre la ripetizione.
Avevo usato scriptaculous (costruito su Prototype) su progetti web in precedenza e aveva partecipato a conferenze tra cui @media Ajax 2007 dove ho incontrato persone come Brendan Eich che aveva creato EcmaScript / Javascript su Netscape e John Resig che aveva creato jQuery nel 2006, un rivale di script.aculo.us di Thomas Fuchs che "... ti fornisce librerie JavaScript di interfaccia utente cross-browser di facile utilizzo per far volare i tuoi siti web e le tue applicazioni web". Il Web 2.0 è nato in questo periodo e la semplice funzionalità Ajax era uno dei suoi componenti chiave, che jQuery e Prototype hanno abilitato.
Al suo apice, jQuery è stato utilizzato sull'80% dei primi 1 milione di siti web (https://en.wikipedia.org/wiki/JQuery#cite_note-:1-19) ed è arrivato in bundle con CMS comuni, tra cui Joomla (dopo che si è allontanato da MooTools nella versione 4)
Fino a poco tempo fa, jQuery era stato il componente onnipresente in molti progetti, ma ho iniziato a incontrare sviluppatori più giovani che avrebbero urlato su Angular.js o Vue o React, a seconda di quale sembrava essere il quadro vivace hyped quella settimana. Non fraintendetemi, capisco come questi quadri/biblioteche possano giovare ai progetti in quanto trascorro ore libere a scavare a React Native come mezzo per creare app mobili.
È stato solo questa settimana che ho dovuto ricostruire un sito web che aveva trovato la sua strada sulla Wayback Machine senza un backup. Indossando il cappello del mio reverse-engineer mi sono rapidamente messo al lavoro per capire come lo sviluppatore originale avesse svolto determinati compiti. Ho passato un po' di tempo al CSS e ho maledetto l'archivio per non avermi permesso di entrare in ogni pezzo di script usato per far funzionare il frontend.
E ho scelto di utilizzare jQuery per far funzionare rapidamente il sito, con i suoi menu animati e le dissolvenze dell'immagine dell'effetto Burns. L'ho fatto perché per me stavo entrando nella testa dello sviluppatore che aveva iniziato il progetto. Ma nella parte posteriore della mia mente mi sentivo un po 'in colpa per aver pigramente saltato dentro e usato una libreria di codice che, indipendentemente dal fatto che io usi una funzione, o 3 dozzine, devo caricare tutta la libreria principale.
Solo per quel progetto jQuery viene precaricato, quindi perché il senso di colpa? Bene, se uso Javascript grezzo è già nel browser, come l'HTML, e sto solo dicendo al browser come lavorare con il mio sito web. Quindi perché devo caricare jQuery per eseguire l'attività per me, potenzialmente gonfiando il mio sito (anche di un po ') e influenzando il punteggio di pagespeed tutto importante? Una delle ragioni è la sua eredità. Molti plugin ed estensioni utilizzeranno non solo jQuery ma Bootstrap come base per layout e styling.
Per cosa usiamo JavaScript?
- Ajax: richiamare i dati in una pagina senza doverli ricaricare
- Interazioni: manipolare il DOM per mostrare / nascondere elementi
- Animazioni
La performance è una delle chiavi
È per questo che gli sviluppatori si stanno allontanando da jQuery? Pagespeed / Prestazioni?
Ho iniziato pensando che questa fosse una domanda facilmente risolvibile su come le librerie e i framework dovrebbero essere sostituiti con JavaScript puro. Da un lato le librerie aiutano a semplificare il processo di sviluppo e vogliono assicurarsi della compatibilità tra browser / piattaforma.
Ma JavaScript è maturato nel tempo e uno dei motivi per l'utilizzo di jQuery è stato il modo non standard in cui si sono comportati alcuni browser web. Ti ricordi di dover fare controlli extra o eccezioni per Internet Explorer?
Sostituiamo jQuery nei nostri progetti?
Prima di saltare e rimuovere jQuery su tutta la linea, pensa a cosa fa per te.
Un fattore importante potrebbe essere quello che il progetto è.
Quindi considera quanto lavoro extra creerebbe per codificare ciò di cui hai bisogno in Javascript. Quest'ultima domanda mi interessa di più perché ho usato React Native per un po' di tempo e ho imparato che il modo in cui stavo scrivendo Javascript era un po' antiquato. Dai un'occhiata a come Potresti non aver bisogno di JQuery elenca le funzionalità e confronta l'utilizzo di jQuery con senza. In alcuni casi utilizzando il Versione ES6 è più breve e più veloce di jQuery.
Interessante anche il fatto che in alcuni casi jQuery non compare nemmeno in una lista di quadri attuali.
Conclusione, per ora
Nell'ampio schema delle cose, se una biblioteca è disponibile per l'uso, perché non farne uso? In Joomla, jQuery è disponibile ma non caricato per impostazione predefinita. Quindi dovresti chiamarlo nel tuo modulo, modello, ecc.
HTMLHelper::_('jquery.framework');
Dipende anche a cosa è destinato il tuo progetto. Dovremmo tutti essere consapevoli della velocità, specialmente per il sito di e-commerce, e di questioni più grandi come quanta energia è necessaria per far funzionare il nostro sito web. Opzioni più ecologiche potrebbero esaminare le prestazioni del sito Web per ridurre la sua impronta di carbonio, ad esempio.
La tecnologia cambia nel tempo, quindi è una buona idea tenere il passo con ciò che sta succedendo nel mondo dello scripting, poiché i comandi che usi sempre possono ancora funzionare, ma potrebbero esserci opzioni migliori là fuori.
Alcuni articoli pubblicati sul Joomla Community Magazine rappresentano l'opinione personale o l'esperienza dell'Autore sul tema specifico e potrebbero non essere allineati alla posizione ufficiale del Progetto Joomla
Backend con CSS personalizzato






















