<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
	<title>Хабрахабр / Клиентская оптимизация / Захабренные</title>
	<link>http://habrahabr.ru/rss/blog/client_side_optimization/</link>
	<description><![CDATA[Захабренные посты из блога «Клиентская оптимизация» на Хабрахабре]]></description>
	<language>ru</language>
	<managingEditor>editor@habrahabr.ru</managingEditor>
	<generator>habrahabr.ru</generator>
	<pubDate>Fri, 10 Feb 2012 19:40:44 GMT</pubDate>
	<lastBuildDate></lastBuildDate>
	<image>
		<link>http://habrahabr.ru/</link>
		<url>http://habrahabr.ru/i/logo.gif</url>
		<title>Хабрахабр</title>
	</image>
	
		
	
		
	<item>		
		<title><![CDATA[Клиентская оптимизация / [Из песочницы] JavaScript. Оптимизация: опыт, проверенный временем]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/137318/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/137318/</link>			
		<description><![CDATA[<h4>Предисловие</h4><br/>
Давно хотел написать. Мысли есть, желание есть, времени нету… Но вот нашлось, так что привет, Хабра.<br/>
Здесь я собрал все идеи, которые помогали и помогают в разработке веб-приложений. Для удобства я разбил их на группы:<br/>
<ol>
<li>Память</li>
<li>Оптимизация операций</li>
<li>Выделение критических участков</li>
<li>Циклы и объектные свойства</li>
<li>Немножко о DOM</li>
<li>DocumentFragment как промежуточный буфер</li>
<li>О преобразованиях в объекты</li>
<li>Разбитие кода</li>
<li>События перетаскивания</li>
<li>Другие советы</li>
</ol><br/>
Сейчас речь не пойдёт ни о каких библиотеках. Я постараюсь передать знания о механизмах самого языка, а не их реализациях в библиотеках.<br/>
<br/>
<h5>Память</h5><br/>
Хоть это и не должно волновать клиентского программиста, но не забываем, что память всё-таки не бесконечна и когда-нибудь может закончиться, например, когда запущено несколько массивных программ: офис, графический редактор, компиляция большой программы и др. Несмотря на то, что приведенный пример тривиален, у меня действительно такое случилось, хоть и не из-за браузера, но он тоже сыграл свою роль: 1,3 Гб оперативы (отладчик, около 30 вкладок), начались тормоза по перегрузке страниц ОП в файл подкачки.<br/>
Чтобы уменьшить расход памяти, я предлагаю несколько способов:<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/137318/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Mon, 30 Jan 2012 20:24:03 GMT</pubDate>
		<author>pashak</author>
		<category>javascript</category><category>client side optimization</category><category>оптимизация кода</category><category>советы</category><category>разработка</category>
	</item>
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Топ-10 советов о том, как увеличить скорость загрузки страницы]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/137239/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/137239/</link>			
		<description><![CDATA[Я думаю ни для кого не секрет, что скорость загрузки страницы влияет на множество факторов. Если кто-то не в курсе, то вкратце скажу следующее, что скорость загрузки влияет не только на то, дождется ли посетитель, когда загрузится Ваш сайт, но и на SEO оптимизацию. Ведь на сегодняшний день уже многие поисковые системы при ранжировании сайтов, начали учитывать скорость загрузки страницы. Поэтому чем быстрее будет грузиться Ваш сайт, тем больше посетителей Вы можете получить с поисковых систем, а, следовательно, и больше денег на этом заработать.<br/>
<br/>
Поэтому в этой статья я решил собрать топ-10 советов о том, как же можно увеличить скорость загрузки веб-странички и сайта в целом. Статья не претендует на гениальность и рассчитана на новичков.<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/137239/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Sun, 29 Jan 2012 16:18:03 GMT</pubDate>
		<author>ishamshur</author>
		<category>скорость загрузки страницы</category><category>клиентская оптимизация</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Image Catalyst 2.1]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/135109/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/135109/</link>			
		<description><![CDATA[Здравствуй Хабр!<br/>
<br/>
<img src="http://habrastorage.org/storage1/34aec69d/cbbb1b47/51d57be8/f64bd00f.png" alt="image"/><br/>
<br/>
После нескольких месяцев работы над исправлением ошибок и добавлением новых функции на суд общественности выношу новую версию Image Catalyst 2.1. В новой версии были сделаны ряд ключевых изменений.<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/135109/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Tue, 27 Dec 2011 16:04:10 GMT</pubDate>
		<author>Lorents</author>
		<category>png</category><category>jpeg</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Оптимизация PNG и JPEG без потери качества. Часть 2]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/121096/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/121096/</link>			
		<description><![CDATA[Здравствуй Хабр!<br/>
Вот и настало время второй, и, надеюсь, долгожданной части. Настоятель рекомендую ознакомится с <a href="http://habrahabr.ru/blogs/web_design/119009/">первой частью</a>, ибо без этого будет тяжело понять, о чем я буду писать. В этой части я отойду от теории к практике, а именно покажу небольшое проект для комплексной оптимизации изображений.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/121096/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Sat, 27 Aug 2011 15:00:48 GMT</pubDate>
		<author>Lorents</author>
		<category>png</category><category>jpeg</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Оптимизация скорости мобильных сайтов]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/124203/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/124203/</link>			
		<description><![CDATA[Вместе с ростом мобильного интернета растёт и необходимость оптимизации скорости работы мобильных сайтов. Даже самые современные смартфоны на Android, iOS, WebOS, BlackBerry OS и др. обладают процессорами с частотой не более 1Ghz, а скорости 3G можно считать достаточно медленными (скорость загрузки в 3 раза меньше DSL). <br/>
<br/>
Мобильные устройства унаследовали проблемы “больших” машин: от количества http-запросов до эффективности работы JavaScript.<br/>
<br/>
<h3>Особенности мобильных устройств</h3><br/>
Кроме того, что они часто помещаются в карман и их легче потерять, существует несколько ключевых отличий мобильных устройств по отношению к десктопам:<br/>
<ul>
<li>маленькое разрешение экрана;</li>
<li>медленные соединения;</li>
<li>ограниченный размер кэша;</li>
<li>много различных устройств и форм-факторов;</li>
<li>низкая мощность процессоров;</li>
<li>широкая поддержка HTML5;</li>
<li>относительно новые браузеры (в этом мире не знают о IE6).</li>
</ul><br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/124203/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Fri, 15 Jul 2011 06:16:23 GMT</pubDate>
		<author>aaliaksandr</author>
		<category>web performance</category><category>клиентская оптимизация</category><category>производительность</category><category>мобильные устройства</category><category>webdev</category><category>скорость загрузки страницы</category><category>мобильные сайты</category>
	</item>
	
	
	
	
	
	

	
		
	<item>		
		<title><![CDATA[Клиентская оптимизация / [Из песочницы] Оптимизация PNG и JPEG без потери качества. Часть 1]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/119009/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/119009/</link>			
		<description><![CDATA[<h4>Введение</h4><br/>
Предлагаю Вашему вниманию обзор посвященный оптимизации изображений формата <a href="http://en.wikipedia.org/wiki/Portable_Network_Graphics">PNG</a> и <a href="http://en.wikipedia.org/wiki/JPEG">JPEG</a> без потери качества. Под «без потери качества» подразумевается, что визуально оригинальные и оптимизированные изображения ни чем не будут отличаться. Я читал на Хабре довольно много статьей посвященных данному вопросу, но скажу, большая часть — полная чушь, в них констатируются факты, а не причины. Данный обзор посвящен людям, которые имеют базовые знания об оптимизации изображений.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/119009/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Tue, 10 May 2011 13:53:40 GMT</pubDate>
		<author>Lorents</author>
		<category>png</category><category>jpeg</category>
	</item>
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Храните мелкие картинки в CSS]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/116538/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/116538/</link>			
		<description><![CDATA[Храните мелкие картинки, которые нельзя засунуть в спрайты, в data:image base64 в CSS — это экономит кучу запросов к вебсерверу.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/116538/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Thu, 31 Mar 2011 09:05:15 GMT</pubDate>
		<author>coon88</author>
		<category>html</category><category>css</category><category>tips and tricks</category><category>трюк</category><category>base64</category><category>data:image</category><category>оптимизация сайта</category><category>спрайты</category><category>css спрайты</category><category>sprites</category>
	</item>
	
	
	
	
	
	

	
		
	<item>		
		<title><![CDATA[Клиентская оптимизация / [Из песочницы] CSS спрайты из командной строки]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/110002/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/110002/</link>			
		<description><![CDATA[Да, инструменты для создания CSS спрайтов существуют. Я даже сделал один такой <a href="http://csssprites.com/">сервис</a>. Но они время от времени ломаются (как сейчас, мой). Но и командная многого стоит, и <a href="http://www.imagemagick.org/">imagemagick</a>. Давайте посмотрим, как мы можем создавать CSS спрайты только из командной строки.<br/>
<br/>
<h4>Создание картинки</h4><br/>
Начнем с того, что у нас есть список отдельных файлов:<br/>
<pre><code class="bash">$ ls</code></pre><br/>
<pre>1.png  2.gif  dot.png  phoney.gif  tw.gif</pre> <br/>
<ul>
<li><img src="http://habrastorage.org/storage/b183a809/5a980ba0/bf375e63/8fb5ed42.png"/> — 1.png</li>
<li><img src="http://habrastorage.org/storage/0b3a2219/681fe1d8/f55cd3e7/2a2386b4.gif"/> — 2.gif</li>
<li><img src="http://habrastorage.org/storage/7d6dfad5/53bc78a2/6d4398fa/30b9d0dd.png"/> — dot.png</li>
<li><img src="http://habrastorage.org/storage/90e53404/0edbd4a8/3f89ab57/766fbfdc.gif"/> — phoney.gif</li>
<li><img src="http://habrastorage.org/storage/1acd563a/cef7d7ed/dfa4f2b1/1972aa4c.gif"/> — tw.gif</li>
</ul><br/>
Сделаем из них спрайт:<br/>
<pre><code class="bash">$ convert *png *gif -append result/result-sprite.png</code></pre><br/>
Да, это все. Смотрим результат.<br/>
<img src="http://habrastorage.org/storage/fb9cf0d4/5607578f/12badee3/96444574.png"/><br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/110002/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Sat, 12 Mar 2011 13:10:59 GMT</pubDate>
		<author>bekbulatov</author>
		<category>imagemagick</category><category>sprites</category><category>спрайты</category><category>smush.it</category>
	</item>
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Клиентская оптимизация как сервис]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/94109/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/94109/</link>			
		<description><![CDATA[<img src="http://api.hivext.ru/xssu/cross/download/VzVXUw8HW0EwBj4RRBBeFwcbEUEOG2tDdHQlAEoWQVkPAQBCY1VLQEg%3D/view" align="left" alt="Data URI CSS Sprites"/> Еще с самого начала своей деятельности как web-разработчика я мечтал иметь инструмент, который позволял бы автоматически получать оптимизированую версию моего сайта или веб-приложения. В прошлом оптимизация сводилась к ручному формированию обычных спрайтов, потом к сжиманию скриптов и стилей по отдельности. При внесении каких либо изменений геморрой частично повторялся заново. Благодаря новому сервису клиентской оптимизации теперь это в прошлом.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/94109/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Thu, 20 May 2010 15:24:18 GMT</pubDate>
		<author>heruvim</author>
		<category>клиентская оптимизация</category><category>css sprites</category><category>data:uri</category><category>оптимизация сайта</category><category>webdev</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Правильное REST кэширование]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/90481/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/90481/</link>			
		<description><![CDATA[Пусть мы хотим написать свой хабрахабр с блекджеком и прочими прелестями. Страница статьи у нас стостоит из 3 объёмных блоков:<br/>
1. собственно текст статьи. меняется очень редко.<br/>
2. дерево комментариев. меняется относительно часто, но со временем всё реже и реже.<br/>
3. прямой эфир. небольшой, но меняется очень часто.<br/>
<br/>
Допустим, что страница с этой статьёй доступна по адресу ?article:right.cache<br/>
Но внутрь неё мы не будем помещать никакого контента, а вынесем его в отдельные ресурсы, как это обычно делается со скриптами и стилями. Внутри ?article:right.cache будет лишь индекс подключаемых ресурсов с версиями.<br/>
<br/>
?article:right.cache/content/version:123<br/>
?article:right.cache/comments/time:2010-12-01<br/>
?live/time:2010-12-01<br/>
?style:article/version:666<br/>
?script:article/version:333<br/>
<br/>
Указание версии позволяет задать для ресурсов жёсткое кэширование. А для индексного файла, наоборот, зададим необходимость проверять при каждом запросе изменился ли он. <br/>
<br/>
Такая организация гарантирует нам, что при появлении новых комментариев не придётся грузить статью заново. И наоборот, при изменении статьи не надо будет перегружать всё дерево комментариев. А уж про то, что из-за часто меняющегося прямого эфира нам не надо по новой грузить весь контент, и заикаться не стоит ;-)<br/>
<br/>
Важно, чтобы поисковики видели ссылки на ресурсы и могли их проиндексировать. Однако, из поиска люди будут приходить на конкретный ресурс и даже на конкретную его версию. Соответственно, ресурс должен определять загружен ли он по прямой ссылке и если это так, то после загрузки клиентскими средствами редиректить на индекс. Если актуальная версия ресурса не изменилась, то он потом будет взят из кэша. Если же изменилась — будет загружена новая версия. Не такая уж страшная беда, на самом деле ;-)<br/>
<br/>
Реализации с использованием фреймов и аякса довольно банальны, так что воспользуемся <a href="http://habrahabr.ru/blogs/xslt/90373/">хтмл-инклудами</a>.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/90481/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Fri, 09 Apr 2010 08:40:25 GMT</pubDate>
		<author>tenshi</author>
		<category>xml</category><category>xslt</category><category>xhtml 2.0</category><category>html</category><category>клиентское кэширование</category><category>rest</category><category>include</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Доклад на openwebcamp kiev 2010 по клиентской оптимизации]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/88316/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/88316/</link>			
		<description><![CDATA[Чтобы сайт загружался быстро существует несколько простых способов, которые к тому же не сложно применить на практике. Конечно все зависит от вашего проекта, его размеров и особенностей. Но все же большинство правил применимо везде.<br/>
<br/>
Основные принципы:<br/>
Делать меньше HTTP запросов к серверу<br/>
CSS файлы подключаем в head<br/>
Скрипты загружаем перед  и перед счетчиками и дургими внешними «медленными» или непрогнозируемыми вещами<br/>
Убираем inline стили, блоки кода с HTML шаблонов. Все грузим с кешируемых внешних файлов.<br/>
Переносим файлы CSS Javascript графику на cookie-free домен<br/>
Избегаем CSS Expressions<br/>
Expires заголовки, настраиваем нужное кеширование<br/>
GZIP для HTML CSS Javascript файлов<br/>
Уменьшаем кол-во используемых DNS имен<br/>
Сжимаем HTML CSS Javascript<br/>
Избегаем редиректов<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/88316/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Sun, 21 Mar 2010 00:52:52 GMT</pubDate>
		<author>vtx</author>
		<category>html</category><category>верстка</category><category>css</category><category>оптимизация сайта</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Увеличиваем скорость загрузки сайта используя lazy-load изображений]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/87083/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/87083/</link>			
		<description><![CDATA[Сейчас многие сайты насыщены графикой в разных видах: аватары, иллюстрации к постам, галереи и тп. <br/>
<br/>
Читатели блога «Клиентская оптимизация» как никто другой знают цену лишних запросов к серверу. <br/>
<br/>
Количество обращений к серверу можно легко уменьшить с помощью техники пост загрузки изображений, которые не попадают в область видимости(первый экран). Т.е изначально будут загружаться только те изображения которые пользователь способен увидеть, остальные будут загружаться по мере скролинга страницы. <br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/87083/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Wed, 10 Mar 2010 20:47:01 GMT</pubDate>
		<author>ivv</author>
		<category>YUI</category><category>jquery</category><category>prototype</category><category>performance</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Проблемы сжатия и объединения Javascript]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/86443/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/86443/</link>			
		<description><![CDATA[<a href="http://www.webogroup.com/home/site-speedup/"><img src="http://speedingupwebsite.com/wp-content/uploads/2010/01/005-150x150.png" alt="сжатие текстовых файлов" title="сжатие текстовых файлов" align="right"/></a>После публикации ряда заметок на тему <a href="http://webo.in/articles/habrahabr/11-minifing-javas&amp;#99;ript/">сжатия</a> и <a href="http://webo.in/articles/habrahabr/70-ant-optimization-automation/">объединения JavaScirpt-файлов</a> стоит все же осветить наиболее характерные проблемы этого самого сжатия и объединения.<br/>
<br/>
Начнем с простого: как JS-сжатие способно испортить нам настроение. И как его поднять обратно :)<br/>
<br/>
<strong>UPD</strong> <a href="http://www.webogroup.com/home/offers/speed/">стартовал конкурс ускорения сайтов</a>. В призах: монитор, веб-камера, мышь. Все гипер-быстрое.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/86443/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Fri, 05 Mar 2010 00:38:24 GMT</pubDate>
		<author>sunnybear</author>
		<category>клиентская оптимизация</category><category>скорость загрузки</category><category>объединение js файлов</category><category>минимизация</category><category>проблемы</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Минимизация Javascript кода и CSS с помощью Microsoft Ajax Minifier]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/86067/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/86067/</link>			
		<description><![CDATA[Скачивание объёмных ресурсов, связанных с веб-страницей, таких как Javascript файлы и CSS, влияет не только на скорость загрузки страницы, но и увеличивает трафик, проходящий от сервера к клиентскому браузеру. Последнее обстоятельство особенно важно в подключениях с ограниченным тарифом или при размещении сайта на хостинге с заранее оговоренным объёмом исходящих данных.<br/>
<br/>
Один из способов борьбы с лишними байтами – сжатие данных на сервере и передача gzip'ированного потока браузеру, который уже распаковывает его во время отрисовки страницы. Обсуждение данного способа не входит в данную статью. Я бы хотел рассказать о способе уменьшения данных с помощью удаления всех незначащих символов из сопутствующих веб-странице файлов: Javascript и CSS – минимизации.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/86067/#habracut">Далее</a> </div>]]></description>
		
		<pubDate>Tue, 02 Mar 2010 12:01:04 GMT</pubDate>
		<author>sindilevich</author>
		<category>javascript</category><category>minifier</category><category>microsoft</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Bundler: клиентская оптимизация Javascript в ASP.NET]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/84255/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/84255/</link>			
		<description><![CDATA[<img src="http://i2.asp.net/common/header/logo.png?cdn_id=01253010_1" alt="image" align="left"/>Сегодня, при разработке приложений в интернете, вопрос клиентской оптимизации встает все чаще. Если раньше, страница отправленная клиенту содержала только информацию, то сегодня очень часто такая страница содержит много Javascript-кода. Для достижения наилучшей производительности и снижения нагрузки на сервер применяются правила клиентской оптимизации.<br/>
<br/>
В этой статье речь пойдет про Bundler — удобное средство клиентской оптимизации Javascript для .net-проектов.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/84255/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Mon, 15 Feb 2010 06:24:45 GMT</pubDate>
		<author>XaocCPS</author>
		<category>asp.net</category><category>javascript</category><category>bundler</category>
	</item>
	
	
	
	
	
	

	
	
	
		
	<item>		
		<title><![CDATA[Клиентская оптимизация / [Перевод] Загрузка скриптов браузерами: вести с полей]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/83370/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/83370/</link>
		<description><![CDATA[<strong>Как справляются браузеры с параллельной загрузкой скриптов?</strong><br/>
<br/>
Во времена IE7 и Firefox 2.0 ни один браузер не загружал скрипты параллельно с другими ресурсами. Вместо этого старые браузеры блокировали все последующие запросы до полной загрузки, парсинга и выполнения скрипта. Вот так выглядел лог HTTP-запросов при подобной блокировке в старых браузерах:<br/>
<br/>
<img src="http://stevesouders.com/efws/images/scr%69pts-block.gif" alt="HTTP-запросы"/><br/>
<br/>
На <a href="http://stevesouders.com/cuzillion/?ex=10008&amp;title=s&amp;#99;ripts+Block+Downloads">тестовой странице</a>, по которой была сгенерирована данная диаграмма, есть шесть HTTP-запросов:<br/>
<ul>
<li>HTML-документ;</li>
<li>первый скрипт — 2 секунды на скачивание, 2 секунды на выполнение;</li>
<li>второй скрипт — 2 секунды на скачивание, 2 секунды на выполнение;</li>
<li>картинка — 1 секунда на скачивание;</li>
<li>стилевой файл — 1 секунда на скачивание;</li>
<li>iframe — 1 секунда на скачивание.</li>
</ul><br/>
На диаграмме видно, как скрипты блокируют друг друга, а также картинку, стилевой файл и iframe. Последние загружаются параллельно друг другу, но только после того, как завершена последовательная загрузка скриптов.<br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/83370/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Tue, 09 Feb 2010 10:36:00 GMT</pubDate>
		<author>razetdinov</author>
		<category>chrome</category><category>firefox</category><category>internet explorer</category><category>opera</category><category>safari</category><category>браузеры</category><category>загрузка</category><category>оптимизация</category><category>скрипты</category>
	</item>
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / data:URI и производительность, или как замедлить Firefox в 10 (десять) раз]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/79262/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/79262/</link>			
		<description><![CDATA[<img src="http://web-optimizator.googlecode.com/svn/i/home/slide4.png" align="left"/> Собственно, из заголовка должно быть почти все понятно. Но картинка не очень в тему: на ней надо нарисовать Лису, ползущую вслед догоняющему IE.<br/>
<br/>
Это пост является ответом на <a href="http://habrahabr.ru/blogs/client_side_optimization/78120/">«За бугром»</a>, ибо нашлась пара свободных часов, и было, чем их занять.<br/>
<br/>
<strong>UPD</strong> Был обнаружен плагин — Wappalyzer — который на порядок замедлял отображение data:URI в Firefox. Но даже с его отключением Firefox продолжает проигрывать почти всем браузерам.<br/>
<br/>
Но все по порядку.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/79262/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Fri, 25 Dec 2009 03:02:59 GMT</pubDate>
		<author>sunnybear</author>
		<category>клиентская оптимизация</category><category>data:URI</category><category>mhtml</category><category>CSS Sprites</category><category>firefox</category><category>ie</category><category>chrome</category><category>opera</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / «За бугром» все больше интересуются техникой Data:URI CSS Sprites]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/78120/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/78120/</link>			
		<description><![CDATA[<img src="http://fullajax.ru/temp/datauri/ravelrumba/test2/thumbnail.png" align="left"/><br/>
Многим уже известна техника оптимизации сайтов на основе data:uri технологии. Последнее время все больше и больше к относительно новой технологии проявляется интерес мирового сообщества разработчиков. В интернете можно найти уже достаточно много статей на эту тему. Радует, что одним из первых, кто задумался серьезно о разработке кросс-браузерного data:uri это «наш человек» — Евгений Степанищев aka <a href="http://bolk.habrahabr.ru/" class="user_link">bolk</a>. Ну так вот, речь не об этом, это так для истории…<br/>
<br/>
Наткнулся мне «забугорный» блог <a href="http://www.ravelrumba.com">www.ravelrumba.com</a>, автор которого последнее время активно занимается исследованием эффективности data:uri css sprites. О чем свидетельствует ряд интересных статей о его работе. <br/>
<a href="http://www.ravelrumba.com/blog/css-images-and-data-uris/">CSS Images and Data URIs</a><br/>
<a href="http://www.ravelrumba.com/blog/data-uris-for-css-images-more-tests-more-questions/comment-page-1/">Data URIs for CSS Images: More Tests, More Questions</a><br/>
<br/>
Я решил поддержать его и провел анализ скорости загрузки разработанных им тестовых страниц. <br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/78120/#habracut">Результаты в картинках</a> </div>]]></description>
		
		<pubDate>Sun, 13 Dec 2009 11:37:46 GMT</pubDate>
		<author>sirus</author>
		<category>клиентская оптимизация</category><category>data:uri</category><category>css</category><category>sprites</category><category>web-разработка</category><category>optimization</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Производительность flash-баннеров]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/77535/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/77535/</link>			
		<description><![CDATA[<img align="left" src="http://veg.slutsk.net/habr/cpu_usage.png"/>Частяком, когда я работаю с множеством сайтов, какая-нибудь самая наглая страничка отнимает слишком много процессорного времени, из-за чего система неприятно подтормаживает. Чаще всего оказывается, что виновник — это какой-нибудь хитрый баннер на Flash или совершенно бесполезная приблуда на Javascript, выполняющаяся в фоне.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/77535/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Mon, 07 Dec 2009 18:43:01 GMT</pubDate>
		<author>VEG</author>
		<category>производительность</category><category>flash</category><category>баннеры</category>
	</item>
	
	
	
	
	
	

		
	<item>		
		<title><![CDATA[Клиентская оптимизация / Небольшая обертка для нескольких блоков Яндекс-Директа на странице c «отложенной» загрузкой]]></title>
		<guid isPermaLink="true">http://habrahabr.ru/blogs/client_side_optimization/77347/</guid>
		<link>http://habrahabr.ru/blogs/client_side_optimization/77347/</link>			
		<description><![CDATA[Как и многие вебмастера, я сталкиваюсь с тем, что Яндекс-Директ, бывает, подтормаживает при загрузке. Причина — использование<br/>
<br/>
<code>document.write(&quot;&lt;script&gt;”);<br/>
</code><br/>
<br/>
в любом месте страницы, что при отсутствии ответа от сервера — приводит к блокировке HTML-парсера и “зависанию” страницы.<br/>
<br/>
Сам <a href="http://help.yandex.ru/partner/?id=1027717">Яндекс предлагает бороться с этой проблемой следующим образом</a>, однако, как-то не уверенно ;-) — о возможности создания такого подключения можно узнать только из FAQ, а не из самого интерфейса системы при создании и подключении блоков.<br/>
<br/>
Все здорово, правда в случае, если на сайте несколько блоков Директа — становится немного неудобно.<br/>
<br/>
Сегодня я написал небольшую “оберточку”, которая может кому-нибудь пригодится<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/client_side_optimization/77347/#habracut">Читать дальше &rarr;</a> </div>]]></description>
		
		<pubDate>Sat, 05 Dec 2009 02:58:17 GMT</pubDate>
		<author>MichaelXIII</author>
		<category>яндекс.директ</category><category>оптимизация</category><category>РСЯ</category><category>яндекс.маркет</category>
	</item>
	
	
	
	
	
	

	

	
	
	
	
	
</channel>
</rss>

