Статьи

Средний вес страницы увеличился на 30% в 2012 году

Приближаясь к концу 2012 года, я решил обратиться к отчету об архиве HTTP, в котором собрана технологическая статистика с 300 000 самых популярных веб-сайтов. Поразительные новости: средний вес страницы увеличился на 30% за год и достиг 1250 КБ. Да, 1,25 Мб.

Отчасти это ожирение можно объяснить праздниками и подарками. Если вы изучите 100 лучших сайтов, то вес страниц увеличился с 584 КБ до 955 КБ за два месяца — огромный рост на 64%. В основном это изображения и флеш-реклама. Это может ухудшиться, как только нормализация возобновится, и люди будут сыт по горло постоянными покупками паники.

Разбивая эти цифры на конкретные технологии:

технологии конец 2011 конец 2012 увеличение
HTML 42Kb 52Kb 24%
JavaScript 167Kb 214Кб 28%
CSS 32Kb 41Kb 28%
вспышка 90Kb 90Kb 0%
Другой 629Kb 852Kb 35%

Подавляющее большинство этих страниц являются общедоступными контент-сайтами, а не приложениями, насыщенными JavaScript, или играми на основе холста. «Другое» — это, в основном, мультимедиа, например изображения, но также включает в себя стеки шрифтов. Использование пользовательских шрифтов увеличилось и используется 13% веб-сайтов — по сравнению с 7% год назад.

Вспышка осталась стабильной. Технология может быть в упадке, но она остается наиболее приемлемым вариантом для кросс-браузерной анимационной рекламы. Кроме того, средний вес 90Kb составляет всего 7% от общего веса.

Увеличение HTML-кода, вероятно, по мере продвижения отрасли к HTML5. Простые семантические изменения, такие как замена div на header или footer требуют еще нескольких байтов. Некоторая функциональность и валидация также могут быть реализованы в разметке, что ранее было невозможно.

Рост CSS также понятен. Современные CSS3-эффекты имеют дополнительные свойства, и для многих требуются префиксы, специфичные для поставщика (при этом многие разработчики не используют их все должным образом — см . Катастрофа префикса вендующего CSS-поставщика ) .

Однако объединенное увеличение HTML5 и CSS должно быть компенсировано гораздо большим уменьшением размеров файлов изображений. Требуется меньшее количество изображений, учитывая, что закругленные углы, тени, градиенты и переводы позволяют получить эффекты там, где ранее требовалась графика.

Точно так же многие эффекты на основе JavaScript не нужны и не так сложны, как эквивалентные переходы и анимации CSS3. По общему признанию, мы находимся в переходном периоде: большинство библиотек JavaScript все еще предоставляют функции анимации для IE9 и ниже. Но это не объясняет 28% скачка размеров файлов.

Я подозреваю две основные причины раздувания страницы. Мода на большие, качественные, полноэкранные текстуры и фотографии. Это может быть «исправлено» только путем обучения дизайнеров и клиентов. Вторая причина более эндемична: разработчик лень. Вы или или коллеги …

  • полагаться на фреймворки «один размер подходит всем» и никогда не удалять избыточный код?
  • использовать несколько библиотек или вырезать и вставить код для достижения различных эффектов?
  • не заботиться о последствиях веса страницы?

Первое следствие — SEO. Общее влияние может быть относительно незначительным, но Google учитывает скорость страниц в своих алгоритмах ранжирования. Те, кто не заботится о SEO, не должны считать себя профессиональными веб-разработчиками.

Следующая проблема — пользовательский опыт. Пропускная способность редко бывает обильной и никогда не бывает бесплатной; раздутые страницы приводят к более медленным загрузкам, времени выполнения и времени отклика. Это особенно очевидно на мобильных устройствах — у вас, вероятно, есть черный список сайтов, которых следует избегать на вашем смартфоне. Это включает в себя ваш собственный сайт?

Наконец, давайте не будем забывать, что 1.25Mb страниц в среднем. При нормальном распределении половина опрошенных будет больше. Это нелепо для контент-сайтов и, в конечном счете, это будет стоить им посетителей.

Должен ли ваш сайт садиться на диету? Почему он набрал вес? Планируете ли вы решить проблему?