Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oop 我将如何组合';命令';和';复合材料';模拟时间延迟?_Oop_Design Patterns_Logic_Simulation - Fatal编程技术网

Oop 我将如何组合';命令';和';复合材料';模拟时间延迟?

Oop 我将如何组合';命令';和';复合材料';模拟时间延迟?,oop,design-patterns,logic,simulation,Oop,Design Patterns,Logic,Simulation,作为一个学习练习(我不在学校——只是一个老家伙在尝试学习新东西),我正在尝试编写一个包含传播延迟的逻辑门模拟。用户还应该能够将闸门组合在一起,以创建更高级别的对象 我想将设计模式应用到我的问题中,但我遇到了困难 我正在阅读,我发现命令模式是一种很好的方法,可以通过延迟电路模拟电脉冲。我还发现复合模式是模拟嵌套单元的一种好方法。我只是不知道如何把两者混合起来 换句话说,当我在我的门中循环时,我看到门“x”应该被触发。它有15纳秒的延迟,所以我创建了一个从当前游戏时间开始的时间戳为15纳秒的命令。调

作为一个学习练习(我不在学校——只是一个老家伙在尝试学习新东西),我正在尝试编写一个包含传播延迟的逻辑门模拟。用户还应该能够将闸门组合在一起,以创建更高级别的对象

我想将设计模式应用到我的问题中,但我遇到了困难

我正在阅读,我发现命令模式是一种很好的方法,可以通过延迟电路模拟电脉冲。我还发现复合模式是模拟嵌套单元的一种好方法。我只是不知道如何把两者混合起来

换句话说,当我在我的门中循环时,我看到门“x”应该被触发。它有15纳秒的延迟,所以我创建了一个从当前游戏时间开始的时间戳为15纳秒的命令。调度员在哪里?在用餐者的例子中,命令是“订单”,服务员和厨师各自发出命令,并且可以选择引入延迟。如果我有一个“复合”门,它是否也有自己的调度器?我是否需要使用单例来管理队列

我读了我能找到的,但我仍然需要朝着正确的方向努力:


嗨!我不明白你为什么要在这种情况下使用命令模式。为什么不改为对延迟门建模呢?当人们试图使用设计模式,但不知道是哪种模式时,这总是很有趣的。。。。