自己カプセル化フィールド
概要
フィールドに対する get メソッドと set メソッドを作成し、フィールドにはそれだけを使ってアクセスする
関連: カプセル化
外部からだけではなく、内部からでもアクセサでしかアクセスしないのが自己カプセル化
フィールドアクセス法の派閥争い
直接アクセス派: その変数を定義しているクラスの範囲内なら自由にアクセスしてよい
間接アクセス派: 必ずアクセサ( set メソッド, get メソッド)を使用する
リファクタリングの時期
フィールドとの結合関係が煩わしくなったとき(割と曖昧)
手順
対象のフィールドに対する get, set メソッドを作成
そのフィールドを参照している部分をすべて get, set メソッドで置き換える
そのフィールドを private にする
#refactoring-chapter8