新装版 リファクタリング ~既存のコードを安全に改善する~
- 読みました。
- 忘れないうちに、それぞれの手法について一言くらいでメモしていきます。
新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES) Martin Fowler 児玉 公信 オーム社 2014-07-26 売り上げランキング : 22428 Amazonで詳しく見る by G-Tools |
第6章 メソッドの構成
- メソッドの抽出
- メソッドのインライン化
- 一時変数のインライン化
- 問い合わせによる一時変数の置き換え
- 説明用変数の導入
- パラメータへの代入の除去
- メソッドオブジェクトによるメソッドの置き換え
- アルゴリズムの取り替え
第7章 オブジェクト間での特性の移動
- メソッドの移動
- フィールドの移動
- クラスの抽出
- クラスのインライン化
- 委譲の隠蔽
- 仲介人の除去
- 外部メソッドの導入
- 局所的拡張の導入
マーティン・ファウラーのリファクタリング 個人的まとめ(第6・7章) - Qiita
第8章 データの再構成
- 自己カプセル化フィールド
- オブジェクトによるデータ値の置き換え
- 値から参照への変更
- 参照から値への変更
- オブジェクトによる配列の置き換え
- 観察されるデータの複製
- 単方向関連の双方向への変更
- 双方向関連の単方向への変更
- シンボリック定数によるマジックナンバーの置き換え
- フィールドのカプセル化
- コレクションのカプセル化
- データクラスによるレコードの置き換え
- クラスによるタイプコードの置き換え
- サブクラスによるタイプコードの置き換え
- State/Strategyによるタイプコードの置き換え
- フィールドによるサブクラスの置き換え
第9章 条件記述の単純化
- 条件記述の分解
- 条件記述の統合
- 重複した条件記述の断片の統合
- 制御フラグの削除
- ガード節による入れ子条件の置き換え
- ポリモーフィズムによる条件記述の置き換え
- ヌルオブジェクトの導入
- 表明の導入
マーティン・ファウラーのリファクタリング 個人的まとめ(第8・9章) - Qiita
第10章 メソッド呼び出しの単純化
- メソッド名の変更
- パラメータの追加
- パラメータの削除
- 問い合わせと更新の分離
- メソッドのパラメタライズ
- 明示的なメソッド群によるパラメータの置き換え
- オブジェクトそのものの受け渡し
- メソッドによるパラメータの置き換え
- パラメータオブジェクトの導入
- setメソッドの削除
- メソッドの隠蔽
- Factory Methodによるコンストラクタの置き換え
- ダウンキャストのカプセル化
- 例外によるエラーコードの置き換え
- 条件判定による例外の置き換え
第11章 継承の取り扱い
- フィールドの引き上げ
- メソッドの引き上げ
- コンストラクタ本体の引き上げ
- メソッドの引き下げ
- フィールドの引き下げ
- サブクラスの抽出
- スーパークラスの抽出
- インターフェースの抽出
- 階層の平坦化
- Template Methodの形成
- 委譲による継承の置き換え
- 継承による委譲の置き換え