FC2ブログ

リファクタリング:アルゴリズムの取り替え

アルゴリズムをよりわかりやすいものに置き換えたい場合、
メソッドの本体を新たなアルゴリズムで置き換えます。
何かをするために、よりわかりやすい方法が見つかったら、
複雑な方法をそれで置き換えるべきです。

private void WriteCharacterJob(Character[] characters)
{
foreach (Character character in characters)
{
if (character.Job == "剣士")
{
Debug.WriteLine("剣士");
}
else if (character.Job == "戦士")
{
Debug.WriteLine("戦士");
}
else if (character.Job == "兵士")
{
Debug.WriteLine("兵士");
}
}
}

private void WriteCharacterJob(Character[] characters)
{
List<string> jobs = new List<string>() { "剣士", "戦士", "兵士" };

foreach (Character character in characters)
{
if (jobs.Contains(character.Job))
{
Debug.WriteLine(character.Job);
}
}
}
リファクタリング―プログラムの体質改善テクニック (Object Technology Series)

Comment

Comment Form
公開設定

Trackback


→ この記事にトラックバックする(FC2ブログユーザー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。