パターン・パラメーターへの依存の追加

依存関係は、「パターン・オーサリング」ビューを使用することによって、同じパターン内の 2 つ以上のパラメーターの間で指定されます。 パラメーター依存は、パターンが適用されたときに、パターンの拡張を制御します。
始める前に
このタスクについて

パターン・パラメーターの依存関係は、2 つのパラメーター間でのみ作成されます。 「パターン・オーサリング」ビューでは、 1 つのパラメーターにつき複数のサプライヤー・パラメーターやクライアント・パラメーターを入力することができますが、 これにより、指定されたパラメーターのペアごとに複数のパラメーターの依存関係が生成されます。 例えば、編集対象のパラメーターの名前が "A" で、 "X" と "Y" がサプライヤー・パラメーターの場合、 パラメーター "A" には 2 つのパラメーターの依存関係が付加されます。 各パラメーターに依存関係を持たせるのは、関連するサプライヤー・パラメーターが変更されたときに通知を受けるためです。 "A" に付加された一方のパラメーターの依存関係は、 "X" が変更されたときに更新され、 同じ "A" に付加されたもう一方のパラメーターの依存関係は、"Y" が変更されたときに更新されます。

パラメーター依存が追加されると、フレームワークはホット・スポット として知られる更新メソッドを、指定されたクライアント・パラメーターのクラスに挿入します。 パターン作成者は、Java™ コードを更新メソッドに追加して、設計の必要に基づいた部分または遅延拡張の振る舞いを提供します。

パターン作成者は、所定のパラメーターの引数の状態変更が別のパラメーターの引数に影響する場合にパラメーターの依存関係を定義します。 例えば、あるパラメーターが、バインドされた新しい引数を取得した場合、 別のパラメーターの引数は、この新規バインディングを考慮するためにその状態を更新する必要があります。

以下のタスクを行ってパラメーター依存を追加することができます。
  • 「新規パターン」ウィザードを使用してパターンおよびパラメーターを追加します。
  • 「新規パターン・パラメーター (New Pattern Parameter)」ウィザードを使用してパラメーターを追加します。
  • 「プロパティー」ビューを使用して、パラメーター依存を追加するかまたは編集します。

パターン・オーサリング (Pattern Authoring)」ビューを使用してパラメーター依存を追加するかまたは編集します。

  1. 「パターン・オーサリング」ビューで、パラメーターを右クリックし、「プロパティー・ビューの表示」 をクリックします。 「プロパティー」ビューが開きます。
  2. その他のパラメーターを現行のパラメーターに対するクライアントとしてパターンに割り当てている場合は、以下のステップを行います。
    1. 「プロパティー」ビューで、「クライアント・パラメーター 」行をクリックし、参照ボタンをクリックして「クライアント・パラメーター依存の編集 (Edit Client Parameter Dependency)」ウィンドウを開きます。
    2. 「既存のパラメーター (Existing Parameters)」の下で 1 つ以上のパラメーターをクリックし、右矢印ボタンをクリックしてそれらのパラメーターを「クライアント・パラメーター」フィールドに移動します。
    3. 「OK」をクリックします。
    更新メソッドのセットがクライアント・パラメーターとして割り当てられたパラメーターへ追加されます。 更新メソッドにコードを追加して、パターンが適用されたときの拡張の振る舞いを指定します。 このパラメーターは、部分的あるいは完全な拡張が起こる前に、クライアント・パラメーターに対して値を提供しなければなりません。
  3. パターン内のその他のパラメーターを現行のパラメーターに対するサプライヤーとして割り当てている場合は、以下のステップを行います。
    1. 「プロパティー」ビューで、「サプライヤー・パラメーター 」値ボックスをクリックし、参照ボタンをクリックして「サプライヤー・パラメーター依存 (Supplier Parameter Dependency)」ウィンドウを開きます。
    2. 「既存のパラメーター (Existing Parameters)」の下で 1 つ以上のパラメーターをクリックし、右矢印ボタンをクリックして選択済みパラメーターをサプライヤー・パラメーター 」フィールドに移動します。
    3. 「OK」をクリックします。
    更新メソッドのセットが、割り当てられたサプライヤー・パラメーターに対するクライアントとして、編集していたパラメーターに追加されます。 更新メソッドにコードを追加して、パターンが適用されたときの拡張の振る舞いを指定します。 このパラメーターは、部分的あるいは完全な拡張が起こる前に、サプライヤー・パラメーターから値を要求します。

    ホット・スポット・メソッド呼び出しは、適宜、最適化されてトリガーされます。 例えば、クライアント・パラメーターに値が指定されていない場合、 サプライヤー・パラメーターはクライアントの更新メソッドを呼び出しません。 このため、更新メソッドが呼び出される場合は、クライアントとサプライヤー両方のパラメーター・セットに値が指定されていると考えられます。

次のタスク
関連タスク
パターンへのパラメーターの追加
グループへのパターンの割り当て
パターンのプロパティー値の設定
パターンの適用者向けの文書の提供
パターンおよびパラメーターの名前変更
ソース・コードの再生成
パターン定義の再生成

フィードバック