1
A
回答
1
实际上,区别不在于结构和实现,而是概念 - 这两种结构都代表不同的概念。
消息 - 即传输某种信息的结构
命令 - 触发某种动作
也就是说,命令是一种消息的结构,因为它至少传输关于动作的信息(并且在大多数情况下还有其他参数)。 在实现方面,MessageHandlers和CommandHandlers看起来非常相似,取决于你想要对这些信息做什么。
实例:
UserRegisteredMessage(用户名) - ,通知有关在系统中注册所使用的消息,处理程序可以用于显示在UI此信息
RegisterUserCommand(用户名) - 一个命令,指示我们的系统注册一个用户,这可能涉及某种额外的行为(如检查唯一性),并可能会失败。
1
在我的经验中,主要是语义和模式的放置位置。消息可能会或可能不会产生副作用,其中一个命令意味着它会。另外,我认为命令模式是作为客户端上的UI模式(通常,虽然不总是),其中消息模式意味着网络跳跃的潜力。
此外,在大多数实现中,消息更松散耦合。您可以在可能听或不听的频道上发送消息。命令(通常并不总是)在执行时更直接。
相关问题
- 1. MassTransit中处理程序和消费者之间的区别
- 2. 消息处理程序
- 3. SOAP消息处理程序
- 4. UIScrollView消息处理程序
- 5. StructureMap:如何获得派生消息的基本消息处理程序? (命令处理程序模式)
- 6. 静态事件处理程序和非静态事件处理程序之间有什么区别
- 7. axd和ashx处理程序之间的区别
- 8. 事件处理程序和回调函数之间的区别
- 9. 有序多线程消息处理
- 10. CPreviewView和命令处理程序
- 11. C#SNMP代理命令处理程序
- 12. click事件处理程序和ngClick指令有什么区别?
- 13. ISR和中断处理程序有区别吗?
- 14. HTML事件处理程序与DOM级别0事件处理程序之间的区别
- 15. django异常处理程序中间件和处理程序500
- 16. 线程和处理程序有什么区别
- 17. ASP.NET Web API消息处理程序
- 18. 安装消息处理程序
- 19. 问题与消息处理程序
- 20. Websocketpp设置消息处理程序
- 21. 重复处理程序消息?
- 22. ASP.NET Web API消息处理程序
- 23. Masstransit。处理程序不确认消息
- 24. ActiveMQ/JMS消息处理程序测试
- 25. Android:比较处理程序的消息
- 26. Spring集成消息处理程序:ActiveMQTextMessage
- 27. 的Android,处理程序消息
- 28. 从消息处理程序启动asynctask
- 29. 事件处理程序和事件侦听器之间有什么区别?
- 30. nativeElement.click()和事件处理程序的点击之间有什么区别?
对不起,我没有得到你想要解释我。 – Rookian