0

PHP には (まだ) 戻り値の型がないため、多少機能が低下しています。X が既に存在する場合に例外をスローするには、コードが必要です。これをシナリオに書くことはできますが、シナリオから自分のクラスが実装するインターフェイスに進むことができません。

実際、この問題はTDDでも同じだと思います。インターフェースよりも、「テスト」を通じてわかることの方が多いようです。それでも私のインターフェイスは、どのコンポーネントが相互作用できるか、どのような責任を負うべきかを定義します。

PHP には戻り値の型がないため、問題はより大きくなりますが、x の場合に例外をスローする必要があるという契約がないため、他の言語にも存在します。

どうすればこれに対処できますか?

4

1 に答える 1

1

例外をスローする言語では、インターフェイスはコントラクト仕様の一部にすぎません。テストを使用して、予想されるときに正しい例外がスローされることを主張することにより、残りのコントラクトを記述します。

于 2009-11-23T10:59:06.110 に答える