プロパティゲッターから例外をスローすることは不適切であると聞いており、この論理的根拠の背後にある理由を理解しています。しかし、次の状況は私を困惑させています:あなたがいくつかの異なるプラットフォームに適応することを意図したファサードを書いていると想像してください:
public interface IFacade
{
int SomeProperty { get; set; }
}
X
ここで、そのプラットフォームとY
サポートをSomeProperty
ネイティブに想像しますが、そのプラットフォームはそうでZ
はありません。NotSupportedException
プラットフォームのアダプターのゲッターからスローZ
することは、そのプラットフォームの特定のケースでは機能がサポートされていないことをユーザーに伝える正しい方法ではありませんか?