私が執筆している図書館では、非常にめったに実行されない方法がいくつかあります。私が車両をモデリングしているとき、(例外的な)方法の1つは、非常にまれな分解エンジンです。私はこのメソッドで例外をスローする必要がありますか?これにより、車両が使用できなくなります。この例で例外をスローするのに最適なのはどこですか?
.NET設計フレームワークガイドラインブックを読んで、メソッドが実行を完了できない場合にのみ例外が発生する必要があることを示しています。実際のエンジンのクラックされたメソッドは常に完了しますが、私のメソッドの1つ、たとえばエンジンを始動する(このメソッドはエンジンにストレスを与える手段としてのエンジン始動量を格納します)が呼び出され、クラックされたエンジン、どこに(もしあれば)私は例外をスローする必要がありますか?
フィードバックメカニズムのビットを教えてください(それは何ですか)? – dotnetdev
それは本当に残りのコードに依存しているので、言うことは難しいでしょう - しかし、あなたのシステムはそれに関連する条件付きロジックを持つ状態の感覚を持っていると思いますか? EngineState.Crackedがそこに収まるかもしれません。Engine.Cracked(明らかに疑似コードがあります)の場合、Engine.Startを実行します。 –
私はあなたが何を意味するかを見ます。私はそのアプローチに従うことができますが、カーが動いているときにクラックされた例外が発生することがあります。その時点で例外がスローされるべきです(システムが機能しなくなるため)。 – dotnetdev