Web 上のソースをクロールしているときに、次のように見える多くの定型コードに遭遇しました。
public class CustomObject: IDisposable
たくさんのメソッドを持つ がいくつかあるとします。
現在、これらの各メソッドにはデフォルトのサニティ チェックがあります。
if (inputBuffer == null)
throw new ArgumentNullException("inputBuffer");
if (outputBuffer == null)
throw new ArgumentNullException("outputBuffer");
if (inputCount < 0)
throw new ArgumentException("inputCount", "< 0");
ただし、(IDisposable
インターフェイスの実装により) 次のチェックが各メソッドに追加されます。
if (disposed)
throw new ObjectDisposedException("MethodName");
さて、これは一般的な慣行ですか?古い使い捨てクラスの再設計とこれらのチェックの実装を開始する必要がありますか?