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コアチームのメンバーでもある。