目前,我有代码看起来像这样C#代码重构
Status("Start Step 1");
result = Step1();
Status("End Step 1", result);
Status("Start Step 2");
result = Step2();
Status("End Step 2", result);
Status("Start Step 3");
result = Step3();
Status("End Step 3", result);
这将有可能以某种方式重构这个代码,并摆脱了状态行。 - 但是在每个步骤的开始和结束时更新状态非常重要。
我想过将状态行移入Step1,2,3的调用,但这只是使方法混乱。
创建一个接受lambda表达式的函数(包含Step1,2,3 ...)。用适当的lambda调用该functon;让它增加一个本地步数,并打印“开始”,做lambda,打印“结束步骤”。 –