[デザインモードランダムリンク] - コマンドモード

1.なぜコマンドモード必要があります

  1. ソフトウェアのビルドプロセス。リクエスタ動作と、発信者の行動は、強い結合の場合であってもよいです。以下
    もし(タイプ== A){do_a()}
     そう であれば(タイプ== B){do_b()}
     そう であれば(タイプ== C){do_c()} 
    ...

    このコードは非常に複雑で高い結合され、それからパターンを最適化する必要があります。

  2. あなたは、このようなコーディングは非常に面倒なことができ、行動や他の操作を撤回する必要があるかもしれません。

だから、実行するコマンド・モードでは、あるオブジェクトとしてパッケージ行うために、この問題を解決するために、。

2.定義コマンドモード

コマンドモード:

要求(動作)は、異なる要求を使用するように、オブジェクトにカプセル化されたログパラメータまたは他のオブジェクトのキュー、動作を取り消すことができるサポートすることができます。

3.コマンドモードの実現

まず、我々はすべきコマンドインタフェースを定義します。

パブリック インターフェイスコマンド{
     公共 ボイドは(実行)。
}

この一連のコマンドを元に戻す必要がある場合は、元に戻すと、メソッドを定義することができます。

次に、サブクラスを実装することでは、さまざまなコマンドを構成します。

パブリック クラスTestCommand {
     公共 ボイド(){実行
        のdoSomething()を; 
    } 
}

最後に、Commandオブジェクトの実装の呼び出しを渡すことで、発信者。

 

おすすめ

転載: www.cnblogs.com/tomoka/p/10985661.html