L’arte della compressione

Mercoledì 21 Gennaio 2009 - 08:37

di Riccardo Degni

Scripting

L’arte di comprimere (alias offuscare, minimizzare o ridurre) i file Javascript è ormai diventata una pratica comune. Numerosi kb risparmiati e performance più elevate sono i principali motivi che giustamente spingono gli sviluppatori ad avvicinarsi a questa scelta.

Come in ogni ambito dell’informatica, però, abbiamo a disposizione diverse strade per raggiungere l’obiettivo, che in questo caso si concretizzano nelle differenti tipologie di “Packer” presenti in rete.

Tra i più famosi troviamo il packer di Dean Edwards, ormai giunto alla versione 3.0, lo YUI Compressor (ora disponibile anche online), JSMIN The Javascript Minifier, Javascript Compressor di Creativyst e molti altri.

Abbiamo inoltre a disposizione l’algoritmo GZip, che riduce in maniera esponenziale le dimensioni di un dato file (funziona molto bene in coppia con lo YUI Compressor). Quest’ultimo può arrivare ad una riduzione del 90% del peso effettivo, incidendo comunque in maniera negativa sull’uso della CPU.

Detto questo, quali sono le vostre pratiche comuni quando decidete di “comprimere” un file Javascript e pubblicarlo online? Perché preferite utilizzare determinati strumenti al posto di altri?

Tags:

Categoria: Scripting | Permalink

Commenti

1

Qualche semestre fa lessi un articolo che dimostrava come l’eccessiva riduzione del js si trasformava in alti tempi decompressione e riproduzione da parte del browser del medio utente.

Da quel momento non mi sono più preoccupato del pelo nell’uovo, una qualsiasi riduzione di base fa ottenere il 90% dei risultati, e il restante 10% sono solo spiccioli.

# - postato da Slam - 21 Gennaio 2009 - 09:00

2

Andrea aveva creato questo progettino:
http://packed.it/
è un packer alternativo, risolve un bug del packer di dean e inoltre è l’unico che permetta di comprimere javascript e css assieme, inoltre gestisce il caching della compressione, consiglio di darci un occhiata ;)

# - postato da kentaromiura - 21 Gennaio 2009 - 09:05

3

Bisogna premettere che la compressione ha senso solo su alcuni siti, su un sito aziendale da 30 visite al giorno… non ha senso. Diverso il ragionamento se parliamo di portali, webmail, community come forum siti d’asta o social network dove spesso ci sono molti accessi contemporanei ed il risparmio di banda per il server divente importante.

Il risparmio lato client non lo reputo di “primaria” importanza, ho fatto dei test con firebug e molti file beneficiano moltissimo della cache del browser quindi tranne la prima pagina le altre schizzano.

# - postato da TaTaC - 21 Gennaio 2009 - 09:28

4

Ho utilizzato sia il packer di Dean Edwards che packed.it di Andrea Giammarchi; attualmente servo al browser file javascript e CSS compressi attraverso l’algoritmo GZip; per farlo utilizzo una classe php sempre di Andrea: gzoutput.
Ottimo il risultato di compressione.

# - postato da Filippo - 21 Gennaio 2009 - 10:52

5

Assolutamente daccordo con Slam e TaTac … per tutti i progetti che ho sviluppato (piccoli siti che puntano più che altro su l’impatto grafico) preferisco una compressione base che comunque riduce le dimensioni del file ma non va ad incidere sulle performance

# - postato da Engelium - 21 Gennaio 2009 - 11:46

6

Compressione senza Gzip. Potrebbe essere utile per tutti YSlow.

# - postato da Mattia - 21 Gennaio 2009 - 14:10

Inserisci il tuo commento:





(puoi usare i seguenti tag HTML per formattare il testo -
a href, b, i, br/, p, strong, em, ul, ol, li, blockquote, pre):

 

Anteprima del commento