私は少しこのようになりますC#の方法があります。どのようにして必要なelse節をリファクタリングできますか?
let eval() =
// do some work
if conditionA then
// do some work
if conditionB then
// do some work
if conditionC then
// do some work
true
else
false
else
false
else
false
きれいになり何:これが原因で必須、他の枝のかなり醜い探して終わるF#では
bool Eval() {
// do some work
if (conditionA) {
// do some work
if (conditionB) {
// do some work
if (conditionC) {
// do some work
return true;
}
}
}
return false;
}
をF#でこれを書く方法?
C#でこれを書くためのクリーンな方法は間違いなくあります。あなたの条件を逆にして、偽を返します。 F#で役立つかどうかは分かりませんが。 –
この質問にはうれしいことがたくさんあります。 –
@Onorio - 私は同意しません。 「面白い」回答がたくさんありますが、私の意見では、ほとんどの回答が複雑さを増しています。ソフトウェアエンジニアとしての目標はそれを減らすことだと思いました。 – Brian