CommandデザインパターンでInvokerクラスはオプションですか? クライアントは、具体的なコマンドとコマンドの受信者をインスタンス化する必要があります。クライアントは常に Invoker をインスタンス化し、コマンド オブジェクトを Invoker オブジェクトに渡す必要がありますか。後でクライアントがコマンドを実行する必要があるときはいつでも、クライアントは Invoker オブジェクトに尋ねるだけで、Invoker はコマンドを実行します (おそらくすぐに、または後で実行するためにコマンドをキューに入れることができます)。
それとも、これは逆ですか?クライアントがコマンドを同期的に実行する必要がある場合、クライアントは基本クラス インターフェイスを使用してコマンドを参照しますが、具体的なコマンドとレシーバーをインスタンス化します。クライアントがコマンドを実行する必要があるときはいつでも、クライアントは基本クラスのコマンド変数で実行メソッドを呼び出すだけですか? コマンドをいつ実行するかの追加ロジックが必要な場合、その追加ロジックを保持するために Invoker クラスが使用され、クライアントは Invoker オブジェクトと対話してコマンドを実行しますか?