torutkのブログ

ソフトウェア・エンジニアのブログ

AspectJベースでDbC

2012/7/3 リンク先修正

Design by Contract(契約による設計)と書くと小難しく聞こえますが、メソッドをプログラミングする際に事前条件、事後条件、不変条件をきちっと定義して頑健なプログラムを書きましょうというものです。

U.S.のdeveloperWorksの記事(日本語訳)AOP@Work: Contract4Jを使用したコンポーネント設計

AspectJ 5のアノテーションによるアスペクト記述機能を利用して事前条件、事後条件、クラス不変条件をアノテーションするContractJの紹介記事です。DbCはクラス・メソッド毎に指定するのでアスペクト指向の横断する関心事とは相性がよくないと思っていました。しかし、アノテーションでクラス・メソッド毎に指定する記述を入れることによって相性がとてもよく、簡潔に定義できるようになっています。アノテーションAOPの組み合わせは要注目です。

ちょっと古いdeveloperWorksの記事「IBM Developer 日本語版 : 大変申し訳ありません。このページは無効です。
も参考まで。