値から参照への変更
概要
同じインスタンスが多数存在する場合に、それを1つのオブジェクトに置き換える
リファクタリング時期
同じインスタンスが大量に存在して、その全体を変更しなければならない可能性があるとき
手順
Factory Method によるコンストラクタの置き換え (第10章)を適用する
コンパイルしてテスト
オブジェクトに対するアクセスを提供する責務をどのオブジェクトが持つか決める
アクセスポイントを作る
大体は静的(static)なフィールドにディクショナリやレジストリオブジェクトを作成
そのオブジェクトを事前に作っておくか、必要に応じて作るか決める (テキストでは事前に作る流れを説明)
ファクトリメソッドを、参照オブジェクトを返すように変更する
存在しないオブジェクトを参照したときの処理が必要になる場合も
コンパイルしてテスト
#refactoring-chapter8