这是一个抽象的问题,没有真正的代码(也可能不是最好的伪代码),所以希望它足够有意义,不会被主持人死亡。但是这个问题一直在我面前反复提出,因为我正在开展的项目是非常线性的,取决于以前的条件和流程。所以...顺序逻辑和可读性
给定了一系列逻辑任务,每个逻辑任务都依赖于前一个,我尝试了两种方法来构造代码。 一个取决于proceed
变量,这样
Proceed = True
If Task1 Not Successful Then
Proceed = False
End If
If Proceed Then
If Task2 Not Successful Then
Proceed = False
End If
End If
等
但我已经在许多地方意见的效果看,这种运行继续变量的方法是不理想的。所以,或者我可以有
If Task1 Succcesful Then
If Task2 Successful
Then Etc
Else
Error Condition
End If
Else
Error Condition
End If
在我看来,前者更可读,逻辑非常明显。而且,当顺序中的任务数量变大(超过3个或者真的)时,嵌套的Ifs真的变得笨拙。 所以,我的问题是,不使用这种第一种方法的原因是什么? 有没有更好的方法来构建第二个例子中的逻辑来提高可读性? 还是有第三种方式解决前者的问题(不管他们是什么)以及后者的可读性问题? 还是第一种方法实际上很好,当一个确实有顺序依赖任务序列?