NullObject

引数や戻り値で同一型のオブジェクトを複数個扱う場合、今までは配列を使用していた。


Public Function GetHogehoge() As ClsHoge()

End Function
正直非常に違和感があった。個人的に配列をこの部分に使うのは好きじゃなかったのだが他の方法が見つけられないでいた。で、最近気づいたのがArrayListで返す事。

Public Function GetHogehoge() As ArrayList

End Function
処理の結果返すオブジェクトが無い場合でも必ずArrayListを返せば戻り値に対してのNothingチェックは不要になる。*1そのままFor Eachにも渡せるし、2.0になってGenericが使えればもっと素敵な感じになりそうだ。

*1:ArrayList要素のNothingチェックはまた別問題