マイクロソフトのDevLabsで公開されている.NETにおける設計とテストにおけるテクノロジーであるCode ContractsとPexを使ってみました。 結論から言うとかなり使えそうでひょっとしたら開発スタイルを変え可能性があると思いました。 かなり奥が深そうでまだ可能性と限界について完全に理解できているわけではないのですがまだ日本語で紹介している情報が少ないようなので書きたいと思います。 Code Contractsは.NETで「契約による設計(DbC:Design By Contract)」を実現するためのランタイムとVisual Studioに統合される開発環境です。 つまりC#などの言語で契約、つまりメソッド毎に「事前条件 (precondition)」「事後条件 (postcondition)」とクラス(インスタンス)における「不変条件 (invariant)」を記述することで