重複したコード
同じようなコードが2か所以上で見られる
対処法
同一クラス内の複数メソッドで同じ式がある
→
メソッドの抽出
重複したコードが兄弟クラス間で見られる
重複部分が完全に同一である
→両方のクラスに対して
メソッドの抽出
→
メソッドの引き上げ
重複部分が似通っている
→
メソッドの抽出
で共通部分とそうでない部分を分離
→
Template Methodの形成
or
アルゴリズムの取り替え
まったく関係のない2つのクラス間で重複したコードが見られる
→一方のクラスに
クラスの抽出
を行う。委譲する。
#コードの不吉な臭い