より良いエンジニアを目指して

1日1つ。良くなる!上手くなる!

やっぱりAdd brace。中括弧つけませんか

今の職場って、C#のコードを

if (a==b) return;

というのはまだしも

if (a==b)
   return;

とすることがあるようです。

個人的には一行でも

if (a==b) {
   return;
}

と中括弧で囲って欲しいなぁと思ってました。

というのも中括弧で囲わない場合は、一行ならいいですが、複数行になるとまずいことになります。

とはいえ、郷に入っては郷に従えというのか、まあ、そこまでめくじら立てることもないだろうと。

中括弧で囲うとソースが長くなるデメリットがあるため、トレードオフです。

しかし、こんなことが起きてしまったんですよねえ

if (a==b)
return;

結果としてはインデントがあってもなくても一緒です。

f:id:rimever:20210325214216p:plain

でも紛らわしいですよね。

この程度のコードで事故ることはほとんどないです。ソースレビューしていれば。

ただ、切羽詰まった時どうか。リリース間近で障害が見つかって修正している時。

そういう時にやっぱりうっかりミスで失敗して、無に帰すようなことを招きたくないよなあと思った次第でした。

前職では、「なるべく安全サイドに倒せ」という合言葉がありましたが、そうでしょう。

防御的コードとある本に書いてありましたが、それです。