Software Debuggingまとめ2
Ch2 Assertions
アサーションを使用することによって、エラーの検出が早くなりすぐ修正できる。
事前条件と事後条件
関数でアサーションを使用する場合は、その関数の事前条件と事後条件をチェックする。
ただし一般的に事後条件は書くのが難しい。
不変条件
不変条件とはあるオブジェクトが常に満たしていなければならない条件である。つまり、不変条件に反していればエラーとなる。
publicメソッドの最初と最後でチェックする。
まとめ
アサーションを使用する場合は
- 不変条件を定義する。
- 事前条件を設定し、不変条件のチェックも行う。
- 事後条件を設定し、不変条件のチェックも行う。
アサーションとコンパイル
アサーションには時間がかかることがある。
その場合、時間がかかる関数のアサーションのみオフにする。