Ruby:逆向计算或电子表格功能

Ruby: reverse calculation or spreadsheet function

我有一个模块可以计算大约 150-200 个值。完成后,我希望能够编辑一个或部分结果(可能是也可能不是原始的非计算值之一)并更新其他结果,就像电子表格的功能一样。

问题是我真的不知道从哪里开始。该模块的代码大致如下所示:

if @user.override > 0
  h[:floor] += (@user.override / h[:size]) * 0.03
end

if @user.other_override > 0
  h[:floor] += (@user.other_override / h[:size]) * 0.03
end

而且相当时间顺序,使这项任务更加艰巨。

这里有什么可行的方法吗?除了在我的应用程序中利用实际的电子表格之外,我几乎无法理解它的可能性。

您要找的是“Reactive Programming". Many languages have an implementation of the ReactiveX framework, so does Ruby: RxRuby