@634

リファクタリング

※きちんとまとまっていないけれど、なんとなく公開。
参考程度に。

Advertisement

リファクタリング

リファクタリング一覧

  • 値から参照への変更
  • アルゴリズムの取り替え
  • 委譲による継承の置き換え
  • 委譲の隠蔽
  • 一時変数のインライン化
  • 一時変数の分離
  • インタフェースの抽出
  • オブジェクトそのものの受け渡し
  • オブジェクトによるデータ値の置き換え
  • オブジェクトによる配列の置き換え
  • 階層の抽出
  • 階層の平坦化
  • 観察されるデータの複製
  • ガード節による入れ子条件記述の置き換え
  • 外部メソッドの導入
  • 局所的拡張の導入
  • クラスによるタイプコードの置き換え
  • クラスのインライン化
  • クラスの抽出
  • 継承による委譲の置き換え
  • 継承の分割
  • コレクションのカプセル化
  • コンストラクタ本体の引き上げ
  • サブクラスによるタイプコードの置き換え
  • サブクラスの抽出
  • 参照から値への変更
  • シンボリック定数によるマジックナンバーの置き換え
  • 自己カプセル化フィールド
  • 条件記述の統合
  • 条件記述の分解
  • 条件判定による例外の置き換え
  • State/Strategyによるタイプコードの置き換え
  • スーパークラスの抽出
  • 制御フラグの削除
  • setメソッドの削除
  • 説明用変数の導入
  • 双方向関連の単方向への変更
  • 単方向関連の双方向への変更
  • ダウンキャストのカプセル化
  • 仲介人の除去
  • 重複した条件記述の断片の統合
  • 手続き的な設計からオブジェクトへの変換
  • Template Methodの形成
  • データクラスによるレコードの置き換え
  • 問い合わせと更新の分離
  • 問い合わせによる一時変数の置き換え
  • ヌルオブジェクトの導入
  • パラメータへの代入の除去
  • 引数の削除
  • 引数の追加
  • 引数オブジェクトの導入
  • 表明の導入
  • Factory Methodによるコンストラクタの置き換え
  • フィールドによるサブクラスの置き換え
  • フィールドのカプセル化
  • フィールドの移動
  • フィールドの引き下げ
  • フィールドの引き上げ
  • プレゼンテーションとドメイン分離
  • ポリフォーフィズムによる条件記述の置き換え
  • 明示的なメソッド群による引数の置き換え
  • メソッドによる引数の置き換え
  • メソッドのインライン化
  • メソッドのパラメータ化
  • メソッドの移動
  • メソッドの引き下げ
  • メソッドの引き上げ
  • メソッドの隠蔽
  • メソッドの抽出
  • メソッドオブジェクトによるメソッドの置き換え
  • メソッド名の変更
  • 例外によるエラーコードの置き換え

参考

J2EEリファクタリング

プレゼンテーション層

  • コントローラの導入
  • 同期トークンの導入
    重複リクエスト対策
  • 共通点のないロジックの局所化
  • プレゼンテーション層固有の詳細をビジネス層から隠す
  • ビューから変換処理を取り除く
  • リソースをクライアントから隠す

ビジネス層とインテグレーション層

  • エンティティBeanをセッションBeanでラップする
  • Business Delegateの導入
  • セッションBeanの統合
  • エンティティBean間の通信をなくす
  • ビジネスロジックをセッションBeanに移す

一般

  • データアクセスコードの分離
  • 多層アプローチによるアーキテクチャのリファクタリング
  • 接続プールの利用

参考

実際のリファクタリング

Advertisement

ショートカット

634
634ブログ
このカテゴリのトップページに戻る
Incubator(Pukiwiki)
634ラボ
   UIコレクションギャラリー
   ZO-3ジェネレーター

サイト検索


Y!ログール