2

Command オブジェクトを使用して制約を検証すると、Domain オブジェクトを使用して制約を検証するよりもパフォーマンス上の利点がありますか?

つまり、着信パラメーターをインターセプトしてコマンドオブジェクトに配置し、 cmd.hasErrors() を呼び出してから、それをオブジェクトにバインドして obj.save() を試行し、オブジェクト制約が検証を実行できるようにする場合

4

1 に答える 1

2

パフォーマンス上の利点に気付いたことはありません。実際、これを行うとパフォーマンスがわずかに低下する可能性があります。コマンド オブジェクトはその検証とバインディングを行い、ドメイン オブジェクトも同様に検証とバインディングを行います。これは単なる推測であり、もし本当なら、おそらく比較的小規模なヒットです。

私の基本的な戦略は、厳密に単一のクラスに対してフォーム入力を行う場合、ドメインを使用することです。ドメインが必要ない場合 (ログインなど)、または複数のドメイン (著者と書籍など) が同じフォームにある場合は、コマンド オブジェクトを使用します。

于 2012-06-15T18:19:58.927 に答える