Nullobject

nullobject.png

あらゆる箇所にnullチェックを入れるのはうざったいですよね
絶対nullが来ないとわかってるところを増やしてnullチェックを減らしたいものです。
難しい言葉で言うと
クライアントのnullに対処する責務を取り除く[2]とも言います
そこで、解決策として

return nullを避けてreturn new NullObject()する

> Nullオブジェクトクラスとは何もしないクラスのことです

class NullCharactor extends Charactor{
   //歩く
   @Override
   public void walk(){}//何もしない
   @Override
   public void draw(){}//何もしない
}

オブジェクト用の変数にnullを入れる代わりに、NullObjectを入れておきます
player=new NullCharactor();

good-interface null return

サポートサイト Wikidot.com good-interfacenullreturn