Domanda

stavo navigando sul web, come al solito e ho voluto dare un'occhiata a Bing s ' fonte codice, perché ero curioso e volevo sapere cosa stavano usando per fare la loro dissolvenza dell'immagine in sono rimasto sorpreso da quello che potrebbe essere qualificato solo dalla riga seguente:.

parete Santo di testo!

E mi ha fatto chiedo se non v'è alcun vantaggio per offuscare il (X) HTML, CSS e JavaScript in questo modo? Per ridurre le dimensioni del file, forse?


Edit: Dopo aver cercato, ho capito che questo era una pratica abbastanza comune. Mai guardato la cosa da un punto di vista minimizzazione prima!

È stato utile?

Soluzione

Non sono offuscando. Sono Minimizzando al fine di ridurre la larghezza di banda utilizzata da milioni di richieste che vedono ogni giorno.

  

L'obiettivo di JavaScript e CSS   minification è sempre di preservare la   qualità operative del codice   riducendone il byte complessiva   footprint (sia in termini prime e dopo   gzip fosse, come la maggior parte JavaScript e CSS   servito dai server Web di produzione è   gzip come parte del protocollo HTTP).

Potreste anche essere interessati a leggere il Yahoo! Interfaccia utente del blog post intitolato href="http://yuiblog.com/blog/2006/03/06/minification-v-obfuscation/" "Minification v. Offuscamento" .

Altri suggerimenti

2 motivi principali per offuscare il codice:

  • Ridurre la dimensione totale del file (come lei ha citato) Se si sostituisce una funzione chiamata 'CallThisFunctionAndReturnAnArray' con 'C' -. Hai salvato un sacco di caratteri nel file

  • proteggere la proprietà intellettuale - mentre se questo è realistico è discutibile definitiva, questa è la giustificazione comune per farlo. È possibile aggirare il problema con buoni strumenti, o se sono solo veramente intelligente.

dimensione del file sarebbe certo un vantaggio, tanto che, ad esempio Gmail sé non solo questo, ma anche il suo contenuto zip.

Non c'è assolutamente un vantaggio a questo. C'è qualcosa di importante notare, però. Non v'è alcun motivo di codice in realtà come questa. Piuttosto, dopo aver finito di fare qualcosa (e la scrittura in buona forma leggibile), utilizzare un minifier per rimuovere inutili spazi bianchi e così via. Per i file più grandi questo può ridurre notevolmente i tempi di caricamento.

Io rispondo che "offuscamento" non è l'obiettivo in questi casi, ma larghezza di banda . Se si sta servendo contenuto memorizzabile nella cache ad una velocità tale che la riduzione delle dimensioni homepage sarebbe utile, allora non avere un senso di farlo.

Per quanto riguarda l'offuscamento di prendere le distanze occhi indiscreti -. No. Non fare che

Solo per ridurre le dimensioni, e solo su moduli di grandi dimensioni. Una maggiore guadagno può essere ottenuto utilizzando gzip.

Se si utilizza qualsiasi codice di terze parti, è possibile che venga richiesto di lasciare i propri commenti copyright / licenza intatto quando esegui la minimizzazione. La gente spesso si dimentica di fare questo. Probabilmente si vorrà lasciare i propri commenti sul copyright intatta anche.

Sì, la riduzione della dimensione del file.

Sì. Riduzione delle dimensioni del file non solo riduce il tempo di download, ma anche la fase di analisi, che è molto utile in alcuni browser (in particolare il diavolo-generato IE6).

Questa minimizzazione probabilmente vuole retagging.

Vorrei richiamare una differenza tra l'ottimizzazione per ridurre le dimensioni del file e offuscamento con lo scopo di prevenire (o almeno rendere difficile) reverse engineering. Inoltre, Google per esempio ha un "compilatore" che si estende JavaScript per includere un certo tipo di sistema avanzate e simili; e questo codice esteso è poi "compilato" in regolare JavaScript. Ovviamente ha senso creare questo codice generato in modo ottimizzato -. Non c'è alcuna necessità di rendere più gestibile

Sono pronto a scommettere la ragione principale che lo fanno è quello di ridurre le dimensioni del file. File più piccoli rende il caricamento della pagina più veloce.

offuscamento non è così importante. Inoltre, può rendere le cose un dolore per il debug, a seconda di come lo si fa.

La velocità è tutto in ricerca.

  

E mi ha fatto chiedo se non v'è alcun vantaggio per offuscare il (X) HTML, CSS e Javascript come questo? Per ridurre le dimensioni del file, forse?

L'offuscamento è un po ' diversa da un'altra tecnica comune con i file JavaScript, minimizzazione. Minification è comune con JavaScript in quanto riduce la dimensione del file, che, con i file di grandi dimensioni in grado di ridurre in modo significativo la loro dimensione (in quanto grandi file Javascript spesso contengono un sacco di commenti, interruzioni di riga, spazi non necessari e così via, che può essere messo a nudo per ridurre le dimensioni di lo script).

offuscamento, d'altra parte, è anche più su occultamento il codice da altri, cambiando i nomi delle variabili per gli altri che sono oscure, o che rimuovono significato dal file Javascript. Tuttavia, in questo modo spesso riduce la dimensione del file, dal momento che i nomi delle variabili sono spesso molto più brevi rispetto a quelli del file originale. Questa è una tecnica comune per rendere più difficile per gli altri semplicemente codice copiare, ed è più di proteggere il codice che è ovviamente molto più facilmente accessibili rispetto ad altre piattaforme.

fare entrambe minification e offuscamento sono vantaggiose per i propri script, in quanto riducono la dimensione dei file Javascript, che riduce il tempo necessario per caricare le pagine, e rende anche più difficile per gli altri a reverse engineering (se si tratta di un problema per il codice).

Tuttavia: nota che si tratta di non a prova di errore - ci sono alcuni strumenti che esistono, che rendono più facile per invertire ingegnere offuscato codice, in modo che non lo rende al 100% al sicuro da altri che vogliono davvero dare un'occhiata a come funzionano i vostri script.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top