『ハイパフォーマンスWebサイト』
https://gyazo.com/197bad922a3a584395a07b2ab5e2a967
初版は2008/4
かなり古いのでそれを念頭に置いて読む必要がある
A章 フロントエンドのパフォーマンスの重要性
A.1 ウェブページのパフォーマンスを追跡する
A.2 時間はどこで使われたのか?
A.3 パフォーマンス改善の鉄則
1章 ルール1:HTTPリクエストを減らす
1.1 イメージマップ
1.2 CSSスプライト
1.3 インライン画像
1.4 スクリプトおよびスタイルシートの結合
1.5 まとめ
2.1 コンテンツデリバリネットワーク
2.2 節減の効果
4.1 圧縮の通知
4.2 圧縮の対象
4.3 圧縮による減量
4.4 圧縮の設定
4.4.1 Apache 1.3の場合(mod_gzip)
4.4.2 Apache 2.xの場合(mod_deflate)
4.5 プロキシによるキャッシュ
4.6 エッジケース
4.7 gzipの効果
5章 ルール5:スタイルシートは先頭に置く
5.1 プログレッシブ・レンダリング
5.2 sleep.cgi
5.3 「からっぽの白い画面」現象
5.3.1 CSSがページの最後にある場合
5.3.2 CSSがページの最初にある場合
5.4 「FOUC」現象
5.5 フロントエンド・エンジニアはどうすべきか
6章 ルール6:スクリプトは最後に置く
6.1 スクリプトに関する問題
6.2 並列ダウンロード
6.3 スクリプトによってダウンロードが中断される場合
6.4 最悪のケース:スクリプトが一番上で読み込まれる場合
6.5 最善のケース:スクリプトが一番下で指定されている場合
6.6 まとめ
7章 ルール7:CSS expressionの使用を控える
7.2 問題への対処
7.2.1 1回限りのCSS expression
7.2.2 イベントハンドラ
7.3 まとめ
8章 ルール8:JavaScriptとCSSは外部ファイル化する
8.1 インラインか外部ファイルか
8.1.1 単純な比較ではインラインの方が速い
8.1.2 ページビュー
8.1.3 キャッシュが空かキャッシュ済みか
8.1.4 コンポーネントの再利用
8.2 実際のサイトにおける典型的な例
8.3 ホームページ
8.4 両方のよいところをとる
8.4.1 onload後にダウンロード
8.4.2 動的なインライン化
9章 ルール9:DNSルックアップを減らす
9.1.1 DNSキャッシュに影響を与える要因
9.1.2 TTL値
9.2 ブラウザの視点から見たDNSキャッシュ
9.2.1 Internet Explorer
9.2.2 Firefox
10章 ルール10:JavaScriptを縮小化する
10.1 縮小化
10.2 難読化
10.3 削減効果
10.4 例
10.5 補足事項
10.5.1 インラインスクリプト
10.5.2 gzipと縮小化
10.5.3 CSSの縮小化
11章 ルール11:リダイレクトを避ける
11.2 リダイレクトによるパフォーマンスの低下
11.3 リダイレクトの代替策
11.3.1 末尾のスラッシュの欠如
11.3.2 ウェブサイトの連結
11.3.3 内部トラフィックの追跡
11.3.4 外向きトラフィックの追跡
11.3.5 覚えやすいURL
12章 ルール12:スクリプトを重複させない
12.1 スクリプトの重複は起こりがち
12.2 スクリプトの重複によるパフォーマンス低下
12.3 スクリプトの重複を防ぐ
14章 ルール14:Ajaxをキャッシュ可能にする
14.1 Web 2.0とDHTMLとAjaxの関係
14.1.1 Web 2.0
14.1.2 DHTML
14.1.3 Ajax
14.2 非同期ならば必ず速いか
14.3 Ajaxリクエストの最適化
14.4 Ajaxをキャッシュ可能にする具体的方法
14.4.1 Yahoo! メール
14.4.2 Googleスプレッドシート
15章 米国トップ10サイトの分析
15.1 ページ容量、応答時間、YSlow評価
15.2 ページ評価の方法
15.3 Amazon
15.4 AOL
15.5 CNN
15.6 eBay
15.7 Google
15.8 MSN
15.9 MySpace
15.10 Wikipedia
15.11 Yahoo!
15.12 YouTube