クラスによるタイプコードの置き換え
概要
オブジェクトを識別するためのタイプコードが int のような基本型になっている場合に、タイプコードを表す新しいクラスを作成して置き換える
問題
基本型だとチェックが大変
異常値
他のタイプコードとの混同
リファクタリング時期
基本型のタイプコードを発見したとき
手順
新しいクラスを作り、古いインタフェース(API)から利用する
タイプコードを表す新しいクラスを作成
基本型によるタイプコードを使っているクラスを、新しいクラスを使うように置き換える
コンパイルしてテスト
新しいインタフェース(API)に切り替える
基本型を使用しない新しいインタフェースを作成
古いインタフェースを新しいインタフェースに置き換える
置き換えるたびにコンパイルしてテスト
古いインタフェースを削除する
#refactoring-chapter8