C#における私のif文の書き方(二つの値を比較する場合)

C,C++,C#とif文で二つの値を比較する時に、イコールを表す時は==と等号を二つ並べる必要がある。

過去に、いろんな言語を行き来しているとうっかり、等号を一つにしてしまう事があった。

そこで、ここ数年は不等号ベースでif文を書くようにしている。

つまり、

if(valueA == valueB)

{

//valueAとvalueBが等しいとき。

}

else

{

//valueAとvalueBが等しくないとき。

}

ではなく

if(valueA != valueB)

{

//valueAとvalueBが等しくないとき。

}

else

{

//valueAとvalueBが等しいとき。

}

としていると言う事。

もし valueAとvalueBが等しくない時はメソッドを抜けてしまっていい場合

if(valueA != valueB)

{

//valueAとvalueBが等しくないとき。

return;

}

//valueAとvalueBが等しいとき。

とします。

もし、valueAとvalueBが等しい時はメソッドを抜けてしまっていい場合は例外で

if(valueA == valueB)

{

//valueAとvalueBが等しいとき。

return;

}

//valueAとvalueBが等しくないとき。

とします。

基本的に、ある条件の時にそれ以下の処理を行わなくていい場合は、

そこで終わらせてしまいたいので、例外的にそうします。

これだけで、ケアレスミスによる不具合はへります。

また、生存期間を最短にする事で、不具合が出たときに該当する範囲を狭くする事ができます。

Share