「契約による設計」の版間の差分

imported>Administrator
編集の要約なし
imported>Administrator
20行目: 20行目:
[[.NET Framework 4.0]]では、[[コードコントラクト]]([[Code Contracts]])という名前の機能が追加され、[[プログラミング言語]]レベルではなく、[[ランタイム]]レベルで「契約による設計」に対応した。これにより[[.NET Framework]]系のすべての[[プログラミング言語]]が対応することとなった。
[[.NET Framework 4.0]]では、[[コードコントラクト]]([[Code Contracts]])という名前の機能が追加され、[[プログラミング言語]]レベルではなく、[[ランタイム]]レベルで「契約による設計」に対応した。これにより[[.NET Framework]]系のすべての[[プログラミング言語]]が対応することとなった。


また、[[Visual Studio]]用のアドオンも提供されており、契約による設計のキモである[[静的チェック]]や[[ドキュメント]]の自動生成も行いえる。とくに[[静的チェック]]はとても重要な要素であり、これが使えないとただの[[コーディング規約]]程度の話で終わってしまい、魅力の9割が失われる。なお、アドオンが使えない[[Visual Studio Express]]では当然使えない。
また、[[Visual Studio]]用のアドオンも提供されており、契約による設計のキモである[[静的チェック]]や[[ドキュメント]]の自動生成も行いえる。とくに[[静的チェック]]はとても重要な要素であり、これが使えないとただの[[コーディング規約]]程度の話で終わってしまい、契約による設計の魅力の99.9999%が失われる。


[[コードコントラクト]]を利用するためのライブラリは[[System.Diagnostics.Contracts 名前空間]]にあり、[[事前条件]]、[[事後条件]]、[[不変条件]]などの表すための[[C Sharp/静的クラス|静的クラス]]が用意されている。
なお[[アドオン]]が使えない[[Visual Studio Express]]ではツール群が使えないので、ただの実行時のエラーチェックと化し、前述のように契約による設計の魅力の99.9999%が失われる。
 
[[コードコントラクト]]を利用するための[[ライブラリ]]は[[System.Diagnostics.Contracts 名前空間]]にあり、[[事前条件]]、[[事後条件]]、[[不変条件]]などの表すための[[C Sharp/静的クラス|静的クラス]]が用意されている。


* http://msdn.microsoft.com/en-us/devlabs/dd491992
* http://msdn.microsoft.com/en-us/devlabs/dd491992