ここで推奨事項を探しています。戻り値が存在しないか判断できない場合に、メソッドからNULLまたは空の値を返す方が良いかどうかに苦労しています。
例として、次の2つの方法を使用します。
string ReverseString(string stringToReverse) // takes a string and reverses it.
Person FindPerson(int personID) // finds a Person with a matching personID.
ではReverseString()
、戻り値の型が文字列であるため、呼び出し側はそれを期待しているため、空の文字列を返します。また、この方法では、呼び出し元はNULLが返されたかどうかを確認する必要がありません。
でFindPerson()
、NULLを返す方が適切なようです。NULLまたは空のPersonオブジェクト(new Person()
)が返されるかどうかに関係なく、呼び出し側は、何かを行う前に(呼び出しなどUpdateName()
)PersonオブジェクトがNULLまたは空であるかどうかを確認する必要があります。ここでNULLを返すだけで、呼び出し側はNULLをチェックするだけでよいのはなぜですか。
他の誰かがこれに苦労していますか?どんな助けや洞察も大歓迎です。