1.なぜコマンドモード必要があります
- ソフトウェアのビルドプロセス。リクエスタ動作と、発信者の行動は、強い結合の場合であってもよいです。以下
もし(タイプ== A){do_a()} そう であれば(タイプ== B){do_b()} そう であれば(タイプ== C){do_c()} ...
このコードは非常に複雑で高い結合され、それからパターンを最適化する必要があります。
- あなたは、このようなコーディングは非常に面倒なことができ、行動や他の操作を撤回する必要があるかもしれません。
だから、実行するコマンド・モードでは、あるオブジェクトとしてパッケージ行うために、この問題を解決するために、。
2.定義コマンドモード
コマンドモード:
要求(動作)は、異なる要求を使用するように、オブジェクトにカプセル化されたログパラメータまたは他のオブジェクトのキュー、動作を取り消すことができるサポートすることができます。
3.コマンドモードの実現
まず、我々はすべきコマンドインタフェースを定義します。
パブリック インターフェイスコマンド{ 公共 ボイドは(実行)。 }
この一連のコマンドを元に戻す必要がある場合は、元に戻すと、メソッドを定義することができます。
次に、サブクラスを実装することでは、さまざまなコマンドを構成します。
パブリック クラスTestCommand { 公共 ボイド(){実行 のdoSomething()を; } }
最後に、Commandオブジェクトの実装の呼び出しを渡すことで、発信者。