我的应用用于离心泵叶轮设计。用户可以通过winform gui实时更改某些属性(流速,尺寸等),并且应该实时提供大部分结果。
有13个用户可更改的参数和大约70个计算参数。
大多数计算在数学上非常复杂,其中一个参数需要迭代(不超过10次迭代)。
我的解决方案包含并计算到目前为止的所有参数:
我已经问过关于CR的this问题,这个问题来自我的懒惰解决方案。
所以我的问题是哪种方法最适合“实时”解决方案?还有其他更好的解决方案吗?
答案 0 :(得分:2)
我会选择解决方案1,我怀疑每个泵都具有相同的属性,只是属性的不同值。
public class Pump
{
public double Speed { get; set; }
public double Size { get; set; }
public void GetCFM() { return Speed * Size; }
}
对GetCFM
的任何调用都会返回最新的计算结果。
如果您不想手动拨打GetCFM
,则可以改为Observer Pattern。使用 Observer Pattern ,您将触发一个处理程序,该处理程序会在任何属性发生更改时随时得到通知。
此外,我怀疑您对real time computation的理解与文章中所解释的不同。