我目前正致力于改进保险报价引擎的设计。没有设计文档,但它涉及传入一个' QuoteData'类对象几乎进入每个子对象,并且由于该设计选择,对象必须具有一些变量' reset'这样它就不会意外地转移到其他特定于方案的代码块中。
处理完输入数据后,它会调出每个方案引擎块,例如:
PcEngine:
Call Engine201611Pc71(pobjQuote)
Engine201611Pc71:
Call Scheme1(pobjQuote)
计划1:
Call AreaRating(pobjQuote)
Call VehicleGroupRating(pobjQuote)
Call CheckOutEachDriver(pobjQuote)
应该注意的是,有几个方案子,每个方案都有十几个与其方案规则相关的其他子调用。
理想情况下,我希望每个方案引用都有一个QuoteData实例,但我们会重复使用相同的实例;只有一个QuoteData实例的成千上万的方案引用。
我将如何进行重构?最初它是一个被ByRef传递到任何地方的结构(有1000多名成员)!