我有一个需要多个集合的类,然后需要以特定顺序对这些集合执行计算。例如
public class ClassCalc
{
public ClassCalc(double varEm,
List<List<double>> col1,
List<List<double>> col2)
{
//set fields etc.
}
public void CalcCols(){
//here, I will 'zip' col1/col2 to create List<double> for each
}
public void CalcStep2(){
//this is dependent on the results from CalcCols()
}
public void CalcNonDependent(){
//this can be called at any stage
}
}
构造函数强制客户端提供相关数据,因此有一种明显的方法可以做到这一点,通过调用 中的方法constructor
,这样我就知道所有内容都会被填充。但是,这似乎不是一个干净的解决方案,尤其是当我想对部分代码进行单元测试时。
如果我想进行单元测试CalcNonDependent()
,我需要完全初始化对象,而我什至可能不需要其他两个计算的结果。
所以,我的问题是,有没有一种模式可以用于这个特定的场景?我看过Chain of Responsibility
& Command Pattern
,但想知道是否有人有任何建议