リファクタリング:ヌルオブジェクトの導入

null値のチェックが繰り返し現れる場合、そのnull値をヌルオブジェクトで置き換えます。

public abstract class Character
{
public abstract void Move();

public static void Move(Character character)
{
if (character != null)
{
character.Move();
}
}
}

public abstract class Character
{
public abstract void Move();

public static void Move(Character character)
{
character.Move();
}
}

public class NullCharacter : Character
{
public override void Move()
{
// 何もしない
}
}
リファクタリング―プログラムの体質改善テクニック (Object Technology Series)

Comment

Comment Form
公開設定

Trackback


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