アクションデザインパターンとは何ですか?
-
22-08-2019 - |
質問
アクション デザイン パターンとは何ですか。聞いたことはありませんか?と同じではないかと疑っていますが、 コマンドデザインパターン [wikipedia] しかし、それに関するリソースが見つかりません。
解決
そうだね、行動パターン==コマンドパターン。あなたはそれが「このアクションを実行し、押されたいくつかのボタンの上に」形で、GUIのデザインでより頻繁に行動パターンを呼ばれるのが聞こえ。コードのボタンはいくつかの種類のアクション対象とアップ配線されることになる。
他のヒント
私が読んでいる "アクション/エグゼキューター パターン」と現在 MSDN でコメントしていますが、コマンドとアクション/エグゼキューターのパターンが同じであるという前提には同意しません。
の説明から、 コマンドパターン SourceMaking.com で:
- リクエストをオブジェクトとしてカプセル化することで、さまざまなリクエストでクライアントをパラメータ化し、リクエストをキューまたはログに記録し、取り消し可能な操作をサポートできるようになります。
- 「オブジェクトのメソッドの呼び出し」を完全なオブジェクトの状態に昇格します。
- オブジェクト指向のコールバック
Action/Executor パターンに関する MSDN 記事から:
Action/Executor パターンは、ユースケースをコードにマッピングするための戦略を特定し、可視性と俊敏性を向上させます。また、エンティティの汚染やトランザクションの適切な使用の省略の問題にも対処します。
違いは、「アクション」が 1 つ以上のステップをカプセル化し、正常に実行されると、それらの変更をデータベース、Web サービス、またはファイル ストレージに保存する方法を認識する役割を担う別のオブジェクトに制御を委任することです。アクションは、その実行/保持方法から切り離されています。
「コマンド」は、アクション/エグゼキューター パターンの半分のように感じられます。「アクション」は「コマンド」と同義のようです。アクション/エグゼキューター パターンは、物事をさらに一歩進めて、「アクション」または「コマンド」によって生成された変更を取得し、それらをどこかに保存する責任を持つ別の懸念事項を記述します。
アクションデザインパターンは、コマンド・デザイン・パターンと同じです。アクション自体はその行動に何についてで情報をカプセル化キーエンティティ、である、それはように元に戻す、とすることができますどのようにそのDO()メソッド、上で行う必要がありどのような処理。場合は、アプリケーションまたはそのコンポーネントのいずれかは、アプリケーション内のすべての活動は、アクションの形で表すことができ、その後、すべてのものは/取り消さ数回やり直すことができ、アクションデザインパターンに合わせて設計されています。例えば。エクセル、テキストエディタなどでのアンドゥ/リドゥでマクロます。
このデザインパターンでのビルディングブロックであるActionクラスは、以下のように設計することができます: -
public interface Action{
public void do();
public void undo();
public void do(int iNoOfTimes);
}
public class FileCopyAction implements Action{
private int iActionId;
public void do(){}
public void undo(){}
public void do(int iNoOfItems){}
}
それがお役に立てば幸いです。