2016-10-29 15 views
1

私は検証したいいくつかのプロパティを持つビルダーパターンを設計しました。プロパティの検証が正しくない場合、ビルダーパターンがオブジェクトをビルドする前にプロパティの内容を変更します。ビルダーパターンと何らかのバリデーションを組み合わせる

これを達成するためにビルダーパターンと組み合わせる他のパターンはありますか?そうでない場合 これを実行するベストプラクティスは何ですか?

検証ロジックは、ビルダー・ロジックに関連している場合は任意の助けが

答えて

1

をいただければ幸いです、実装するための場所は、ビルダークラス自体です。しかし、それがビルダーにビルドしているオブジェクトに関連している場合は、それをビルドするクラスのコンストラクターに移動します。 バリデーションロジックが変更される可能性があると思われる場合や、同じビルダークラスに対してバリデーションをさまざまに実装している場合は、バリデーターインターフェイスを作成してビルダークラスから関連付けを行い、適切なバリデーターをインスタンス化してみてくださいFactoryまたはDIパターンを使用して実装します。