第1章 リファクタリング——最初の例
第2章 リファクタリングの原則
第3章 コードの不吉な臭い
第4章 テストの構築
第5章 カタログの紹介
第6章 リファクタリングはじめの一歩
第7章 カプセル化
第8章 特性の移動
第9章 データの再編成
第10章 条件記述の単純化
第11章 APIのリファクタリング
第12章 継承の取り扱い
メソッドの引き上げ
フィールドの引き上げ
メソッドの押し下げ
フィールドの押し下げ
サブクラスによるタイプコードの置き換え
サブクラスの削除
スーパークラスの抽出
クラス階層の平坦化