Question

YUI compresseur a été le consensus meilleur outil pour réduire au minimum, mais la fermeture semble que ça pourrait être mieux.

Était-ce utile?

La solution

« Quel que soit vous trouvez mieux pour vous » Je pense que la réponse est générale au moment - YUI est disponible plus il en sera sans doute celui qui a actuellement le consensus comme étant le meilleur outil. Alors que la fermeture est nouveau pour nous - donc il n'y a pas la richesse de l'expérience avec fermeture comme il est avec YUI. Par conséquent, je ne pense pas que vous pouvez trouver un des arguments du monde réel convaincantes de pourquoi utiliser la fermeture en fonction des expériences des gens avec elle tout simplement parce qu'il est nouveau.

Cela ne veut pas dire que vous ne devriez pas utiliser fermeture .... juste mon manière détournée de dire, je ne pense pas qu'il y ait une réponse à la disposition jusqu'à ce que un certain nombre de personnes ont utilisé le 2 et les a comparés.

Edit: Il y a quelques comparaisons premières, en disant fermeture ne donne une amélioration: http://blog.feedly.com/2009/ 11/06 / google-fermeture-vs-Yui-min /
http://news.ycombinator.com/item?id=924426

De plus Edit: Utile de garder un oeil sur la liste d'émission pour la fermeture: http://code.google.com / p / fermeture compilateur / questions / liste

Autres conseils

D'après les comparaisons que j'ai vu, la fermeture semble être le grand gagnant en termes de minimisation taille du fichier. Cet article utilise trois bibliothèques JS populaires (jQuery, Prototype, MooTools) pour comparer la compression entre YUI compresseur et fermeture du compilateur: http: // www .bloggingdeveloper.com / post / fermeture du compilateur-vs-YUI-compresseur-comparaison-la-Javascript-Compression-Tools.aspx

fermeture vient en avant dans chaque test, en particulier dans son mode avancé, où « minimise la taille du code d'environ 20-25% de plus que YUI Compressor en fournissant près de 60% de compression. »

La fermeture peut être utilisé en mode simple ou le mode avancé. Mode simple est assez sûr pour la plupart du code JavaScript, car il ne renomme les variables locales dans les fonctions pour obtenir une compression supplémentaire.

mode avancé est beaucoup plus agressif. Il renommer les clés dans les littéraux d'objet et la fonction en ligne des appels si elle peut déterminer si elles renvoient des valeurs simples sans effets secondaires.

Par exemple:

function Foo()
{
  return "hello";
}

alert(Foo());

est traduit:

alert("hello");

Et ce code:

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

est traduit:

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

Vous pouvez empêcher le mode avancé de l'évolution des valeurs clés littéraux objet en citant les noms comme ceci:

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

Vous pouvez essayer ces exemples et d'autres site de fermeture du compilateur .

On dirait jQuery 1.5 vient d'emménager à UglifyJS :

  

De plus, avec ce commutateur, nous avons   déplacé à l'aide de la UglifyJS   Google fermeture du compilateur. Nous avons vu   des améliorations de taille de fichier solide   tout en utilisant si nous sommes très heureux   avec le commutateur.

Je pense que cela dépend de votre code. Si vous voulez compiler votre propre code, alors je pense qu'il vaut la peine de patcher le code afin qu'il fonctionne avec Fermeture du compilateur (certaines choses peut sembler un peu maladroit au début). Je crois que Fermeture du compilateur sera bientôt le premier choix pour ces emplois et il vous fera également de ranger votre code un peu et maintenir un style cohérent (bien sûr cela dépend de vos préférences, vous pouvez détestez certains pièces, je fais: P)

.

Si vous dépendez d'autres bibliothèques alors, à mon avis, vous devriez attendre un peu jusqu'à ce qu'ils libèrent Fermeture du compilateur versions compatibles. Il ne devrait pas prendre beaucoup de temps pour les bibliothèques les plus populaires là-bas. Et vous pouvez peut-être fournir des correctifs pour les bibliothèques « pas si actifs » que vous vous utilisez.

Je parle de Avancé Compilation en mode ici, Simple Compilation mode comme certains a souligné est assez sûr à utiliser.

Et voici une autre opinion - Google fermeture? Je ne suis pas impressionné . Il est peut-être un peu trop sévère, mais agréable lecture. Je suppose que le temps nous dira quel est le meilleur =)

En octobre 2012, ressemble à compresseur YUI est maintenant dépréciée, ou du moins ne va plus à utiliser dans YUI: http://www.yuiblog.com/blog/2012/10/16/state-of-yui-compressor/

Vous pouvez faire des essais ici, et voir ce qui est mieux dans chaque navigateur: http://jsperf.com/closure-vs-yui

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top