Civile.it
/internet
Osservatorio sul diritto e telecomunicazioni informatiche, a cura del dott. V. Spataro dal 1999, 9284 documenti.

Il dizionario e' stato letto volte.



Segui via: Email - Telegram
  Dal 1999   spieghiamo il diritto di internet  Store  Podcast  Dizionario News alert    
             

  


WPkit.it: privacy, formulari, check up per WordPress

Temi attuali:
Algoritmi ChatGPT Intelligenza artificiale Privacy WordPress



Dizionario 12.02.2021    Pdf    Appunta    Letti    Post successivo  

Minificare: cosa significa - dizionario

Minificare il codice perche' vengano trasmessi meno bytes sul web, accorpando piu' files; talvolta per renderlo illeggibile.


Valentino Spataro

 

M

Minificare è un termine che si usa spesso per il css e per javascript.

I framework per il web più famosi hanno tutti una versione integrale, human readable, e una minificata, per non trasmettere bytes inutili. Ecologica direi, non solo per il vantaggio di avere siti più veloci.

I file css e javascript sono presenti in tutti i siti. Spesso ce ne sono molti perchè si riutilizzano varie soluzioni. Ogni richiesta di un nuovo file rallenta la composizione del sito, così si usano due tecniche:

- accorpare tutti i .js in un unico (di solito .min.js) e ridurre la lunghezza dei nomi di funzioni e variabili

- comprimere l'output con gzip o simili.

L'accorpare i files in uno unico per tipo (uno per i css e uno per js) ha già i suoi vantaggi, ma l'ottimizzazione dei nomi usati permette di risparmiare tantissimi bytes.

La tecnica di ridurre il nome delle variabili e delle funzioni viene presa a prestito dai software di offuscamento che nascondono il sorgente alla vista umana, per rendere più difficile la copia. Le chiamate alle librerie di sistema non possono essere ridotte, ma tutte le altre si'. Di fatto si impone la riscrittura del codice.

E' vero che si offusca, ma anche si riduce. Nel caso di software non compilato è questo il risultato principale; nel caso del software compilato la decompilazione è meno utile.

Nel caso dei css il vantaggio consiste soprattutto nel rimuovere gli spazi, perchè gli id e le classi non si possono cambiare, se non in ambienti come WordPress che ha il pieno controllo del tema.

Nel caso dei js il vantaggio è maggiore. In ogni caso è uso distribuire sempre entrambi (versione .js e .min.js ) corredati degli altri files (immagini, font, etc) licenze e documentazione tecnica e d'uso.

Un esempio ? Materializecss, ma anche getbootstrap; anche jquery e jqueryUI, ma tutti: si trovano nel web e su github.

Per gli sviluppatori l'effetto concreto è che per apportare modifiche o sviluppare ulteriormente il sorgente si lavora sempre sul codice non minificato.

Il sorgente minificato non diventa compilato. La compilazione rende un sorgente human readble leggibile anche da una macchina.

I sorgenti minificati invece continuano ad essere interpretati volta per volta, salvo l'uso di cache.

Nell'immagine è evidente come i comandi non possano essere minificati perchè devono ancora essere interpretati. Resta la sintassi del linguaggio. I nomi di funzioni e variabili, e gli spazi e i commenti, sono ridotti o tolti se inutili.

Sempre nell'esempio, molto semplice, la minificazione non incide sulla leggibilità, ma nei progetti di grandi dimensioni il risultato è scarsamente leggibile.

12.02.2021 Valentino Spataro



OTA
Boosting
1-bit LLM
Incidente
Social Media Manager
ARC - protocollo
Legal Product Management
Pareidolia
Violazioni minori
Reverse proxy



Segui le novità in materia di Dizionario su Civile.it via Telegram
oppure via email: (gratis Info privacy)





dallo store:
visita lo store








Dal 1999 il diritto di internet. I testi sono degli autori e di IusOnDemand srl p.iva 04446030969 - diritti riservati - Privacy - Cookie - Condizioni d'uso - in 0.063