仕様パターンは、実装するクラスの階層を使用してISpecification<T>
、型 T の候補オブジェクトが特定の仕様に一致する (= ビジネス ルールを満たす) かどうかを評価する方法を説明していることを知っています。
私の問題:実装したいビジネスルールは、いくつかのオブジェクト(顧客と契約など)を評価する必要があります。
私の二重の質問:
これを達成するための仕様パターンの典型的な適応はありますか?
ISpecification<T>
仕様クラスによるの実装を削除し、メソッドで必要な数のパラメーターを取得することしか考えられませんisSatisfiedBy()
。しかし、これを行うと、この仕様を他の仕様と組み合わせることができなくなります。この問題は私の設計の欠陥を明らかにしますか? (つまり、顧客と契約を使用して評価する必要があるものは、必要なすべての情報を含むサブスクリプションなどの別のオブジェクトで評価する必要があります) ?