私は最近、方法から戻ってきたものについて考えていましたが、方法が失敗したときに私が返す4つのものがあることに気付きました。失敗したメソッドから返すものと投げるタイミング
私の悩みは、この点で私のコードがあまりにも合理的ではないことです。そのため、私はあなたの「ベストプラクティス」について質問したいと思っていました。
そうはFooをとり、バーのリストを返すメソッドを想像することができます:
public IList<Bar> Method(Foo something);
以上の一般的なそれを維持するために:
public IBar Method(IFoo something);
質問は、あなたがどのような種類の上に戻る何をすべきかです失敗のオプションは次のようになります。
- 空の戻り型のように:新しいリスト;または:新しいEmptyBar();
- ヌル
- のような失敗を示す特殊なリスト値が例外
- 投げる:私は本当にオプション4を憎む新しいリスト{新しいFailureBar()}
ので - 私はほとんどときに聞いてinteresstedを他の3つのオプションと理由を使用してください。
後者はエラーではありません。 –
それが私が失敗を言った理由です。 –