ちょろっと余所の部署の手伝いなどしていたら、見た事も無いコーディングルールを発見。
if(a == 1 && b == 2 && c == 3) { doFooBar(); }
if文の括弧の中がごちゃごちゃしていると見通しが悪いから、こういったケースは次のように置き換えるべし、とのこと。
while(true) { if(a != 1) { break; } if(b != 2) { break; } if(c != 3) { break; } doFooBar(); break; }
条件がさらに増えた時に、修正が容易なんだそうな。
世の中には、色んなコーディングスタイルがあるもんだ。
以前にも自分のとこでちょろっと書きましたが、COBOLにEVALUATEって命令があります。
それを使って、同じような分岐を書くことが良くあります。
たぶん、その部署のどこかに筋金入りのCOBOLerが潜んでます。
if(a == 1){
if(b == 1){
if(c == 1){
doFooBar();
}
}
}
の方が見易くて修正も同じくらいしやすいと思うのは俺だけでしょうか。そうですか。
>てーさく
成る程COBOLですか。これは確かに、私の理解の外にある概念ですね。
>かわはら
ネストが深くなる書き方は、基本的に色んなコーディングルールから除け者にされている感じがします。私はそんなに毛嫌いするほどでもないと思っていますけど。
部外者っぽいですが一応。
それはコボラだね
> ネストを毛嫌い
オブジェクト指向(考え方そのものがネスト的)の時代になっても技術者レベルでは意識は変わってないということですね。乗り遅れましたが、俺も訓練されたコボラーの仕業だと思います。
最近のツッコミ
参号館 の中の 日記(ariyasacca)