リーダブルコードを読んだ
理解しやすいコード
コードは他人に理解しやすいものであるべきである。他人が理解しやすいコードとは、他の人が最短期間で理解できるということ。
では、最短期間で理解するにはどのようなコードが良いのかをいかに記す。
読みやすいコード
- 短いコードは読む時間を短くし、理解にかかる時間を減らす
名前に情報を埋め込む
- 変数名は短いコメントで汎用的な名前を避ける。
- 値の場合は、単位などを入れるといい。
- 同じ処理を行う場合、関数化することで見やすいコードにする事も可能であり、テストの追加も楽になる。
美しさ
インデントが整っていたり、段落分けが綺麗なものは見やすく、理解しやすい。
コメントすべきことを知る
コメントは必要のない自明なことは書かない。全体像、ハマりそうな罠の告知に使う。(読み手の立場になろう!)
価値のないコメントとは
- コードからすぐにわかることを書いている
価値のあるコメントとは
- 監督コメンタリーを入れる。コードの背景を入れることで思考の流れを手助けする。
- コードに欠陥があることを認め、どのように直したいのかを書いておく。
- 定数にはなぜその値なのかメモしておく。
コメントは正確で簡潔に書くべきで、コードに対して長すぎるコメントは読み手を混乱させてしまう。
制御フローをわかりやすくする
一行で書こうとするのは良くない。
もしそれが読み手にとって読むのが困難でなければ良いが、複雑な場合は変数を使って分割を行ったり、階層を増やして分かりやすい物にする。
巨大な式を分割する
変数を増やすことで読みやすいコードを実現できても、変数が多すぎることで逆に辛くなることもある。
また、変数のスコープが大きいことも読みづらいことの原因になる。だから、一度しか使わなかったものなどはわざわざ変数にする必要がない。
一つの関数には一つの役割をもたせることで、単純明快なコードを実現することができる。
変数と読みやすさ
変数には代入する回数を一回にできるように実装を行う。
static const int NUM_THREDS = 10;
このようなコードはNUM_THREDSについて多くのことを考える必要がない。
変数の中身が何度も変わることは混乱につながる。constなどを積極的に使っていく。
コードの再構成
コードを書いていてそのうち使わなくなってしまったものが出てくる。
これをコメントアウトなどで残しておきたくなるが、結局それは使わないものなので削除してしまう方が得策である。
ライブラリの作成ができると他のプロジェクトでも汎用的なコードとして再利用ができる可能性がある。
まとめ
これらのことは、実際に自分でコードを書くことで気づくところも多いと思う。
また、リーダブルコードに書いていないことでもさらにコードを良くすることが出来る点があるはずである。
そのため、何度も自分で書くコードを見返したり、他の人のコードの観察をすることで実際に良いコードとはどういうものなのか自分の目で確かめていく。