第7回日本C#ユーザー会 勉強会レポート
開催概要
第66回codeseek勉強会&第7回日本C#ユーザー会 勉強会:
- テーマ: Code Contracts
- 日時: 5月23日(月) 19:00~21:00
- 場所: 日本マイクロソフト品川オフィス(SGT)貸し会議室
募集ページ: 第66回codeseek勉強会&第7回日本C#ユーザー会 勉強会
レポート
参加者: 17名
資料
発表者2名(敬称略、発表順)
基礎からのCode Contracts
View more presentations from neuecc
雑感
「契約」の概念そのものは非常に有用ですが、実現方法にはまだ課題がありそうです。特に、以下のような点:
- .NET の場合は複数のプログラミング言語の間で相互利用できないといけない
- 今の仕様の MSIL で持てる情報にコンパイルされないといけない
- かといって、特定の言語の文法使った文字列で属性に埋め込むとか論外
- 静的チェック(証明)にかかる時間が結構長い
- 分単位
- バックグラウンド実行してくれるものの、低スペック マシンではフォアグラウンドも目に見えて重たい
- IL 書き換えのせいで、仕組みを知らない人はかなり混乱しそう
- 書き方の問題
- 本来、メソッドの宣言に含まれていて欲しい情報が、メソッド本体側に入る
- 特に、インターフェイスに対する契約で面倒なことに
- 事後条件の Result の書き方が長い