< 前へ | 次へ >

演習 6: 引数としての既存要素のバインド

この演習では、既存の UML モデル要素を パターン・テンプレート引数として指定する、2 つの異なる方法を検討します。

ステップを実行する前にこの演習を表示する場合は、次をクリックして ください 。

新規の UML 要素を作成する代わりに、ダイアグラム・ビューのパターン・インスタンスに既存の要素名を入力することで、既存の要素を選択できます。または、「プロジェクト・エクスプローラー」ビューかダイアグラム・ビューからパターン・インスタンスに、既存の要素をドラッグすることができます。

既存の要素を引数としてバインドするには、 既存の要素の名前を引数として指定する、 あるいは、既存の要素を引数としてドラッグするなど、 複数の異なる方法を使用することができます。

  1. 既存の要素の名前を引数として指定する手順は、次のとおりです。
    1. フリーフォーム図またはクラス図で、パターン・インスタンスの「Implementation」パラメーター上にカーソルを保持します。 アクション・バーが表示され、「クラス」アイコンと「テキスト」アイコンが使用可能になります。
    2. アクション・バーの「テキスト」アイコンをクリックし、 既存の UML クラス要素の名前を入力します。 テンプレート・パラメーターの右側に長方形のボックスが表示されます。
    3. ボックスに AppFunction1 と入力し、 サンプル・モデルのクラスを指定します。
    4. インスタンスの外側をクリックするか Enter を押し、入力を完了します。テンプレート・パラメーターの隣にある空のボックスの代わりにバインド記号が表示され、その後に要素名が表示されます。
    5. 「プロジェクト・エクスプローラー」ビューで、 テンプレート・バインドへの変更点を確認します。 バインド構造には、Implementation テンプレート・パラメーターにバインドされた AppFunction1 クラスが表示されます。

    ここで最も重要なことは、DoWork インターフェースの 2 つの操作が AppFunction1 クラスにコピーされることです。

  2. 既存の要素を引数としてドラッグする手順は、次のとおりです。
    1. フリーフォーム図またはクラス図で、パターン・インスタンスの Interface の行の左側に DoWork インターフェースをドラッグ・アンド・ドロップします。

      既にバインドされた要素が選択されている場合、パターン・インスタンスに 要素をドラッグすると、バインドされた要素はドラッグされた要素で置き換えられます。

    2. パターン・バインディングの結果、doNothing 操作と doSomething 操作 が AppFunction1 クラスに追加されたことを、 「プロジェクト・エクスプローラー」ビューで確認します。
    3. 「プロジェクト・エクスプローラー」ビューで、 インスタンスのテンプレート・バインディング構造を展開し、 新規インターフェース要素が追加されたことを確認します。 Interface テンプレート・パラメーターは、DoWork という名前の 3 番目のインターフェース要素にバインドされます。
パターンを再適用し、モデル要素でその効果を確認する準備が できました。
< 前へ | 次へ >