Domanda

YUI Compressor è stato il miglior strumento di consenso per ridurre al minimo, ma la chiusura sembra che potrebbe essere migliore.

È stato utile?

Soluzione

"Qualunque sia a trovare meglio per voi" Penso che è la risposta generale al momento - YUI è stato disponibile più così senza dubbio sarà quello che attualmente ha il consenso ad essere lo strumento migliore. Mentre chiusura è nuova per noi - quindi non c'è la ricchezza di esperienza con chiusura in quanto v'è con YUI. Quindi non credo che ci si trova una valida argomenti reali di perché utilizzare Chiusura sulla base delle esperienze delle persone con esso semplicemente perché è nuovo.

Questo non vuol dire che non si dovrebbe usare Chiusura .... solo il mio intorno modo di dire, non credo che ci sia una risposta a disposizione di questo fino a quando un certo numero di persone che hanno utilizzato il 2 e li rispetto.

Modifica: Ci sono un paio di primi confronti, dicendo Chiusura dà un miglioramento: http://blog.feedly.com/2009/ 06/11 / google-chiusura-vs-yui-min /
http://news.ycombinator.com/item?id=924426

Ulteriori Edit: Vale la pena tenere d'occhio la lista problema per chiusura: http://code.google.com / p / chiusura-compilatore / temi / lista

Altri suggerimenti

Da confronti che ho visto, la chiusura sembra essere il chiaro vincitore in termini di minimizzazione dimensione del file. Questo articolo utilizza tre popolari librerie JS (jQuery, Prototype, MooTools) per confrontare compressione tra YUI Compressor e Closure Compiler: http: // www .bloggingdeveloper.com / post / Chiusura-Compiler-vs-YUI-Compressor-Confrontando-the-Javascript-compressione-Tools.aspx

Chiusura esce davanti a ciascuna prova, in particolare nella sua modalità avanzata, dove "minimizza le dimensioni del codice circa il 20-25% in più rispetto YUI Compressor fornendo compressione quasi il 60%."

La chiusura può essere utilizzato in modalità semplice o la modalità Avanzata. Modalità semplice è abbastanza sicuro per la maggior parte del codice JavaScript, in quanto consente di rinominare solo le variabili locali in funzioni per ottenere una ulteriore compressione.

La modalità avanzata è molto più aggressivo. Sarà rinomina chiavi letterali oggetto, e la funzione inline chiede se può stabilire che ritornano valori semplici senza effetti collaterali.

Ad esempio:

function Foo()
{
  return "hello";
}

alert(Foo());

è tradotto in:

alert("hello");

E questo codice:

var o = {First: "Mike", Last: "Koss"};
alert(o);

è tradotto in:

alert({a:"Mike",b:"Koss"});

È possibile impedire la modalità avanzata di cambiare i valori chiave in letterali oggetto citando i nomi in questo modo:

{'First': "Mike", 'Last': "Koss"}

È possibile provare questi e altri esempi in interattivo sito Closure Compiler .

appare come jQuery 1.5 appena trasferita a UglifyJS :

  

Inoltre, con questo interruttore abbiamo   spostato utilizzando UglifyJS dal   Google Closure Compiler. Abbiamo visto   alcuni miglioramenti di dimensione del file solida   mentre lo si utilizza in modo che siamo abbastanza soddisfatti   con l'interruttore.

Penso che dipende dal codice. Se si vuole compilare il proprio codice, quindi penso che sia valsa la pena di patchare il codice in modo che funziona con Chiusura Compiler (alcune cose potrebbe sembrare un po 'scomodo all'inizio). Credo che Chiusura Compiler presto sarà la migliore scelta per tali posti di lavoro e farà anche per riordinare il codice un po 'e mantenere lo stile coerente (ovviamente dipende dalle vostre preferenze, si potrebbe odi qualche parti, lo faccio: P)

.

Se dipende da altre librerie a mio parere si dovrebbe aspettare un po 'fino a quando non rilasciare versioni Chiusura del compilatore compatibili. Non dovrebbe prendere molto tempo per le librerie più diffuso al mondo. E forse è possibile fornire le correzioni per le biblioteche "non-così-attive" che si utilizzano da soli.

Sto parlando di Avanzate Compilation Modalità qui, il semplice compilazione Modalità alcuni ha sottolineato è abbastanza sicuro da usare.

Ed ecco una diversa opinione - Google chiusura? Io non sono impressionato . E 'forse un po' troppo dura, ma bella lettura. Credo che solo il tempo potrà dire che uno è meglio =)

A partire da ottobre 2012, si presenta come YUI Compressor è ormai deprecato, o per lo meno non è più intenzione di essere utilizzato in YUI: http://www.yuiblog.com/blog/2012/10/16/state-of-yui-compressor/

È possibile effettuare alcuni test qui, e vedere che cosa è meglio in ogni browser: http://jsperf.com/closure-vs-yui

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