Is your JavaScript SLOW JavaScript? |
Amy Hoy氏およびThomas Fuchs氏がIs your JavaScript SLOW JavaScript?において、JavaScriptアプリケーションのパフォーマンスをチェックするためのチェックリスト [PDF]を公開している。印刷して利用できるように工夫されたチェックリストで、31のチェック項目がある。紹介されているチェック項目は次のとおり。
- scriptタグは正しい位置に記述されているか
- DOM MonsterブックマークレットでDOMを分析しパフォーマンス問題を明かにする
- キャッシュヘッダを正しい状態にする
- 結合、インライン、事前キャッシュ
- ミニファイ、Gzip圧縮
- Smush、CSS Script、Favicon
- フレームワークの確認
- ラナウェイタイマの管理
- DOMコード効率の最大化
- ノードセレクション
- トランスパレンシ
- イベント管理
- スタイル
- インナーHTML
- 複雑さ
- Ajaxの調整
- コードの短縮化 (アサインメント、オペレータ、リテラル)
- 巧妙になりすぎている部分の削除
- 評価式の調整
- JSONの利用
- 正規表現のキャッシュ
- クロージャ、グローバル、リテラルに注意
- もっとも効率のいい制御構文を使う
- もっとも効率のいいループを使う
- オブジェクトプロパティの最適な利用
- 変数のキャッシュ
- メモリリーク最小化後のクリーンナップ
- 引数の効率的な利用
- 糖衣構文の除去
- ループの展開や調整
- iPhone向けの最適化
上の項目ほどありふれたチェック項目、下の項目ほど極端なものになっている。Is your JavaScript SLOW JavaScript?ではPDFをダウンロードして活用するだけではなく、高速ティップスの配信や更新情報の報告などをおこなうためにメールを登録してほしいという説明がある。
Amy Hoy氏およびThomas Fuchs氏はJavaScriptのパフォーマンスについてまとめた電子書籍JavaScript Rocks! JavaScript Performance, Benchmarking and Tuning Ebookの執筆者。Thomas Fuchs氏はscript.aculo.usの開発者であるとともに、Prototypeコアチームのメンバーでもある。