.NET コード コントラクトの完全なドキュメントを読み始めたところ、コントラクトに対応するコードを発行しないようにコンパイラを指定できることに気付きました。しかし、なぜ誰かがそれをしたいのだろうと思っていました! つまり、ドキュメントから、コード コントラクトは、コードに関する事前/事後/不変条件を指定することに関するものです。
別の質問.net 4.0 Code Contracts を見てください。いつ使う?彼らはいつ時間の無駄ですか?、契約はオブジェクトの無効な状態から保護する必要があるようですが、もう一度、なぜそれらを無効にしたいのでしょうか! そうすることで、山のような問題への扉を開くことになるのではないでしょうか?
startDate <= endDate
古き良きif-then-throwをビジネスに使用する必要があるかどうかを確認するなど、ビジネス検証として使用する必要がありますか? コード コントラクトを無効にすると、クラスが無効な状態になる可能性があります。
私の質問は残っていますが、なぜコード コントラクトを無効にしたいのでしょうか?