ユーザー インターフェイス ウィジェットがあり、ステータスが変化したときに、いくつかのアクションを実行するように設定する必要があるとします。だからあなたは次のようなことをします:
widget.setSize(400, 300);
widget.setHeader("whatever");
widget.setData(new int[] {2, 3, 5});
widget.setFancyThingEnabled(true);
次に、これらの操作のそれぞれがウィジェット全体の更新をトリガーするとします。それは非効率的です。
これを修正する方法はいくつか知っていますが、それを行うための正しい/最良の/最もエレガントなパターンは何ですか? 私はできることを知っています:
- オブジェクトを作成して、入力
Property
してウィジェットに渡すことができます。 setRefresh(enabled:boolean)
トランザクションをラップする方法があります。- トランザクション内で実行されるコールバック メソッドを介してのみプロパティ設定を許可します。
- 更新をキューに入れ、しばらく待ってから続行してください。
私は GWT を使用していますが、これは任意の速度の遅いマシンのブラウザーで実行されますが、これはほとんどすべての環境に当てはまります。
編集: UIは一例であることに注意してください。状態から別の状態への遷移が、他の中間状態で不要な計算をトリガーしすぎる一般的なシナリオについて言及しています。