私は、プログラマーがインターフェイスで不変条件 (事前および事後条件) を指定できるようにする Java フレームワークを作成することを考えていました。目的は、コードをより堅牢にし、同じインターフェイスのさまざまな実装に対して記述する必要がある単体テストの数を減らすことです。
私は、プログラマーも書く不変条件でメソッドに注釈を付ける何らかの方法を作成することを想定しています。例えば
interface Sort {
int [] sort(int [] nums);
}
実装がソートされたリストを返すことを保証するために、アノテーションで装飾されます。この注釈は、任意の実装に対してコンパイル時に実行できる単体テストにリンクされます。
これはクレイジーなアイデアですか、それともより広いプログラミング コミュニティに役立つでしょうか?