2つのバリデータークラスがあります。たとえば、CarValidatorとWheelValidatorで、2番目のものが最初に囲まれています。
CarBodyValidator.validate(){
WheelValidator.validate();
}
CarBodyValidator、fe EngineValidatorなどにさらに多くのバリデーターがあります。validate()はtrueまたはfalseのみを返す必要があり、一度にできるだけ多くの間違いを出力したい(検証が一部のクラスに対してfalseを返す場合、他のクラスを検証したい場合それらは互いに依存していません)。ここで、Wheelバリデーターが、CarBodyバリデーターに必要な有用な情報を返すとしましょう。ホイールの直径が大きすぎる場合は、他の何かを検証するために車のバリデーターにその情報が必要です。その情報を渡すにはどうすればよいですか。Wheelバリデーターにパラメーターを格納するフィールドを作成できますが、次のようにアクセスします。
carBodyValidator.validate(){
wheelValidator.validate();
if (WheelValidator.getSmomething() == somethingElse){
...
}
}
間違っているようです(つまり、バリデーターは検証するだけで、他には何もしないでください)。これは正しい方法ですか、それとも別の方法で行う必要がありますか。