【问题标题】:Why Command Pattern when a client can call the method directly from reciever instance?当客户端可以直接从接收方实例调用方法时,为什么要使用命令模式?
【发布时间】:2012-01-20 04:14:45
【问题描述】:

最近我遇到了Command Pattern。在这个模式中,Client 负责创建 Reciever、ConcreteCommand 和 Invoker 的实例。在某个时间点(假设在按钮单击中)调用 Invoker 的 Invoke 方法。现在 Invoke 方法负责在 Reciever 中执行特定操作。但是当客户端可以使用 Reciever 直接调用特定操作时,为什么我需要 Invoker(否则命令模式)?

【问题讨论】:

标签: design-patterns command-pattern


【解决方案1】:

为什么我需要一个调用者(命令模式),而客户端可以 使用 Reciever 直接调用特定操作?

这是命令模式的主要设计原理之一 - decouple 来自接收者的调用者(发送者-接收者/生产者-消费者)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-29
    • 2020-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多