良いプログラムって・・・?
良いプログラムってどういうプログラムだろうって最近良く考える。
『ソースが短くて、動作が速いプログラム』
これは、たしかに良いと思う。
しかし、私がそれ以上に大事にしていることは、
『他人が理解しやすいプログラム、バグが起きにくいプログラム』
である。
この四項目は非常に密接に関わっていると思う。
他人が理解しやすいプログラムを書くためには、
ロジックをしっかり考え、行うべき作業を細かにわけて
一つ一つを単純かつ明快に処理をしていかなければならない。
ロジックをしっかり考えることで自然とバグは起きにくくなるし、
動作も速くなるし、ソースも短くなると思う。
どうしてこういうことを最近考えるようになったかというと、
趣味のプログラミングと仕事のプログラミングの違いというものに気づいたからである。
趣味のプログラミングは一人で考え、一人でソースを書き、一人で修正する。
だからコーディング規約も必要ないし、ソースを解析するのに手間暇がかからない。
しかし、仕事のプログラミングは違う。
仕事で扱うプログラミングは非常に規模が大きく、大人数で作業をする。
もちろん長期に渡る作業にもなるし、2つ以上の仕事を同時にこなさないといけない状況にもなる。
バグの修正をする時、作成した本人が必ず手が空いている保証もない。
だからこそ、
なるべくわかりやすいソースを書き、コーディング規約に合わせて、
わかりにくいところはコメントを付けていく。
全ては良いプログラムを作るために・・・
だってそれで飯食ってるんだしね。
でも、見習いの俺はまだまだ勉強中(´・д・`)