はじめに
今更ながらチーム内でリーダブルコード輪読会をすることになった(っていうかすることにした)ので、自分の担当分についてまとめたり感想書いたり。
第1章 理解しやすいコード
どんな内容?
- コードは理解しやすく書かれているべきである
- コードは、_他の人_が素早く理解できるようになっているべきである
読んだ感想
うんまぁそうだよね、って話なんだけど、
「_他の人_が素早く理解できる」であろうコードを_自分_が書くことはなかなか難しい。
自分のレベルのプログラマーにとっては当たり前な記法でも、他の人にはそうでなかったり。
(これは自分のレベル>他人のレベルでも、その逆でも起こり得る)
後の章でも出てくるんだけど、三項演算子とか短絡評価らへんは、
人によってはすごく読みづらく感じるものなので要注意。
チーム内で、
「この書き方ならチームメンバー全員に分かりやすい」
っていう共通見解を持っていた方がいいな。
=> それってつまりコーディング規約。
例を挙げて議論してみよう
どちらが・何故読みやすい?
どちらかが必ず優れていることを示すのではなく、
「チーム内の皆がどう考えているか」
を知るのが目的。
- ガード節の記述
1-1
int funcForPositive(int num) {
if(num < 0) return 0;
...
}
1-2
int funcForPositive(int num) {
if(num < 0) {
return 0;
}
...
}
- ifとswitchの使い分け
2-1
if (num == 1 || num == 2) {
someFunction(num);
} else {
anotherFunction(num);
}
2-2
switch(num) {
case 1:
case 2:
someFunction(num);
break;
default:
anotherFunction(num);
}