<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-2413386800925168921</atom:id><lastBuildDate>Thu, 24 Oct 2024 18:20:43 +0000</lastBuildDate><category>JScript</category><category>JsMin</category><category>YUI Compressor</category><title>Заметки о работе, жизни и т.д.</title><description></description><link>http://merlex.blogspot.com/</link><managingEditor>noreply@blogger.com (MerLex)</managingEditor><generator>Blogger</generator><openSearch:totalResults>1</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2413386800925168921.post-5348136808140268293</guid><pubDate>Thu, 25 Sep 2008 17:06:00 +0000</pubDate><atom:updated>2009-01-29T18:36:54.850+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">JScript</category><category domain="http://www.blogger.com/atom/ns#">JsMin</category><category domain="http://www.blogger.com/atom/ns#">YUI Compressor</category><title>Оптимизация JScript</title><description>&lt;div xmlns=&#39;http://www.w3.org/1999/xhtml&#39;&gt;&lt;blockquote&gt;Каждый вэб-программист, в эпоху 2.0 приходит к тому что есть необходимость в использовании  какого -нить jsframework`а. Развелось их в последнее время очень много, но суть не в этом. Каждый сталкивается с тем что его любимый framework становится все тяжелее и тяжелее, и есть необходимость уменьшить его вес путем компрессии и удаления всего лишнего. Для этого создано несколько оптимизаторов-компрессоров. Вот парочка из них:&lt;br/&gt;&lt;div align=&#39;center&#39;&gt;&lt;b&gt;YUI Compressor.&lt;br/&gt;&lt;/b&gt;&lt;div align=&#39;left&#39;&gt;Компрессор от разработчиков yahoo. Распостраняется безплатно вместе с исходниками, написан на Java, легок в использовании, работает через командную строку, может оптимизировать как JScript так и CSS.&lt;br/&gt;Строка запуска(использую версию 2.3.5)&lt;br/&gt;&lt;span&gt;java -jar /путь/до/компрессора/yuicompressor-2.3.5.jar&lt;/span&gt; [параметры] [/путь/до/файла]&lt;br/&gt;Параметров у него немного, рассмотрим наиболее полезные.&lt;br/&gt;&lt;span&gt;--type &amp;lt;тип&amp;gt;&lt;/span&gt; &lt;js&gt;        Здесь сразу все понятно, указываем что собираемся минимизировать jscript или сss&lt;br/&gt;&lt;span&gt;--charset &amp;lt;кодировка&amp;gt;&lt;/span&gt;   Указываем в какой кодировке минимизируемый файл&lt;br/&gt;&lt;span&gt;-o &amp;lt;имя файла&amp;gt;           &lt;/span&gt; С помощью этой опции можно задать выходной файл, без указания будет заменен исходный файл.&lt;br/&gt;По умолчанию кроме минимизации он делает еще и обфуксацию кода, которую при желании можно оключить с помощью опции &lt;span&gt;--nomunge&lt;/span&gt;, эта опция работает только для jsсript файлов.&lt;br/&gt;В целом очень хороший компрессор, легко использовать. Из минусов можно отметить то что построен на java и требует для работы виртуальную машину java.&lt;br/&gt;&lt;/js&gt;&lt;div align=&#39;center&#39;&gt;&lt;b&gt;JsMin&lt;/b&gt;.&lt;br/&gt;&lt;div align=&#39;left&#39;&gt;Второй компрессор кода который я рассмотрю написал Douglas Crockford. Он также распостраняется свободно, доступно несколько реализаций на разных языках программирования  &lt;a href=&#39;http://www.crockford.com/javascript/jsmin.c&#39;&gt;C&lt;/a&gt;, &lt;a href=&#39;http://www.crockford.com/javascript/jsmin.cs&#39;&gt;C#&lt;/a&gt;, &lt;a href=&#39;http://inconspicuous.org/projects/jsmin/jsmin.java&#39;&gt;Java,&lt;/a&gt; &lt;a href=&#39;http://fmarcia.info/jsmin/&#39;&gt;JavaScript,&lt;/a&gt; &lt;a href=&#39;http://search.cpan.org/%7Epmichaux/JavaScript-Minifier/lib/JavaScript/Minifier.pm&#39;&gt;Perl,&lt;/a&gt; &lt;a href=&#39;http://code.google.com/p/jsmin-php/&#39;&gt;PHP,&lt;/a&gt; &lt;a href=&#39;http://www.crockford.com/javascript/jsmin.py.txt&#39;&gt;Python,&lt;/a&gt; &lt;a href=&#39;http://www.crockford.com/javascript/jsmin.ml&#39;&gt;OCAML,&lt;/a&gt; &lt;a href=&#39;http://www.crockford.com/javascript/jsmin.rb&#39;&gt;Ruby&lt;/a&gt;. В нем не предусмотрена обфуксация кода, т.е. из файла просто вырезаются ненужные символы(например перевод строки, пробел или комментарий).&lt;br/&gt;Я посмотрел исполнение этого компрессора на C и Python.&lt;br/&gt;Как работать? На вход подаем jscript который нужно минимизировать он его обрабатывает и выдает.&lt;br/&gt;И так подведем итоги. Оба рассмотренных минимизатора очень качественные и заслуживают внимания.&lt;br/&gt;&lt;div align=&#39;justify&#39;&gt;Единственный минус это неудобство работы, приходится лезть в консоль, прописывать пути. По этому в следующей заметке я раскажу как написать гуи для удобства работы с этими компрессорами.  Гуй будет написан на питоне с использованием QT и будет позволять как выбор файла для минимизации так и выбор компрессора. Вобщем то гуй уже готов, но об этом в следующей статье, если руки доберуться ее написать ))).&lt;br/&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class=&#39;scribefire-powered&#39;&gt;Powered by &lt;a href=&#39;http://www.scribefire.com/&#39;&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;</description><link>http://merlex.blogspot.com/2008/09/jscript.html</link><author>noreply@blogger.com (MerLex)</author><thr:total>0</thr:total></item></channel></rss>