Pull to refresh

Разгони свой сайт. Оглавление

Reading time 3 min
Views 1K
После обсуждения рентабельности выпуска бумажной книги я решил все же сконцентрироваться на электронной версии. Если она окажется достаточно популярна, там можно будет и о hard-copy подумать.

В эпоху Web2.0 технологий и взглядов было бы глупо писать книгу в отрыве от ее читателей, поэтому в данном топике выложено предварительное оглавление (чтобы скорректировать дальнейшую работу). Оно преследует две цели: во-первых, дать общее понятие о необходимости клиентской оптимизации. Во-вторых, рассказать о существующих подходах и наиболее современных решениях. Книга не стремится научить оптимизировать сложные JavaScript-приложения или настраивать nginx + FastCGI. Только общий подход и основные методики.

Любые комментарии приветствуются.

В книгу планируется также включить несколько не моих лично статей, поэтому в ближайшем будущем дополнительно свяжусь со всеми авторами (т.е. либо некоторые разделы не будут опубликованы, либо будут серьезно переработаны, либо согласованы с авторами и вставлены со ссылками на них).

На данный момент ищется также иллюстратор и(ли) верстальщик, который помог бы оформить все эти сотни (около 300) страниц текста и листингов кода. В качестве компенсации могу предложить 50% от благотворительных пожертвований после публикации книги и любые упоминания имени.

И, собственно, оглавление:

  1. Введение
    1. Об этой книге и проекте webo.in
    2. Благодарности
  2. Что такое клиентская оптимизация?
    1. Цели и задачи оптимизации
    2. Психологические аспекты производительности
    3. Основные направления и технологии
    4. Стадии загрузки страницы
    5. Клиентская и серверная оптимизация: сходство и различия
    6. Применение в разработке веб-приложений
  3. Уменьшение числа запросов
    1. Объединение текстовых файлов
      1. Объединение CSS-файлов
      2. Два слова об условных комментариях
      3. Объединение JavaScript-файлов
    2. Техника CSS Sprites
      1. Различные способы применения
      2. Отличие от Image Map
    3. Кроссбраузерный data:URL
      1. Использование data:URL
      2. Добавляем mhtml
      3. Применение data:URL для кодирования в JavaScript
      4. data:URL и CSS Sprites
    4. Методы экстремальной оптимизации
      1. CSS и JavaScript в одном файле
      2. HTML, CSS и JavaScript в одном файле
    5. Уплотняем поток загрузки
  4. Уменьшение размера
    1. Насколько ресурсоемко архивирование HTML
      1. Издержки на использование mod_gzip
      2. Как степень сжатия влияет на производительность сервера
    2. CSS/JavaScript в виде архивов
    3. Все о сжатии CSS
    4. JavaScript: сжатие и обфускация
      1. Жать или не жать?
      2. Скорость загрузки JavaScript-библиотек
    5. Оптимизация изображений: GIF, PNG, JPEG
      1. PNG против GIF
      2. Полезные советы
    6. Разгоняем favicon.ico – это как?
    7. Режем cookie
  5. Параллельные соединения
    1. Зеркалирование статических файлов
      1. Ограничения спецификации HTTP/1.1
      2. Обходим ограничения браузера на число соединений
    2. Content Delivery Network
    3. Балансировка запросов на клиенте
      1. Постановка задачи
      2. AJAX- и Flash-решения
  6. Кэширование
    1. Expires, Cache-Control и сброс кэша
      1. Expires и Cache-Control
      2. Форсированный сброс кэша
    2. Кэширование в IE: pre-check, post-check
    3. Last-Modified и ETag
    4. Кэширование в Safari для iPhone
  7. Оптимизация CSS
    1. Разгоняем CSS expressions
    2. Что лучше id или class?
      1. Раунд первый: простые селекторы
      2. Раунд второй: наследственность
      3. Раунд третий: лицом к лицу
    3. Влияние семантики и DOM
      1. Размер DOM-дерева и время его отображения
      2. Немного о семантической верстке
    4. Ни в коем случае не reflow!
  8. Оптимизация JavaScript
    1. Кроссбраузерный window.onload
      1. Основная схема
      2. Различные применения
    2. Основы «ненавязчивого» JavaScript
      1. Базовые понятия и методы
      2. Принципы «ненавязчивой» рекламы
      3. Разгоняем внешние счетчики
    3. Замыкания и с чем их едят
      1. Замыкания в JavaScript
      2. Избегаем утечек памяти в IE
    4. Оптимизируем «тяжелые» вычисления
    5. Скорость выборки CSS-селекторов
    6. Быстрые итераторы, рекурсии и другие вкусности
  9. Приложение
    1. Обзор аналитических инструментов
      1. Самостоятельная проверка
      2. Дополнения к браузерам
      3. Веб-приложения
    2. Советы для браузеров
      1. Mozilla Firefox
      2. Internet Explorer
    3. Оптимизированные конфигурации
      1. Apache
      2. Nginx+Apache
      3. IIS
    4. Разбираем по косточкам
      1. Анализ 2–3 крупных порталов

    5. Примеры оптимизированных сайтов

Tags:
Hubs:
+44
Comments 60
Comments Comments 60

Articles