2014年2月12日水曜日

ソースコードはチャートとして見えるようにするべき

他人の書いたプログラムのソースコードは読みにくいものだというのは、プログラミングに関わる人達の共通認識であるように思う。ソースコードはある意味自分の脳内思考回路の具現化とも言えるわけで、他人の思考回路と自分の思考回路が違う以上、読みにくいものであるというのは自然なことだろう。

とはいえ、読みやすいコードと読みにくいコードというものはある。もちろん、インデントをちゃんと揃えることや変数名・関数名・クラス名・メソッド名の命名規則など、基本的な部分を押さえていることは前提だ。そのうえで、コードを読んでいて何を意図してどういう動作をしているのか、分かりやすいコードとわかりにくいコードがある。

分かりやすいコードというものは一大テーマであって、それだけで本ができてしまうくらいのものであり、実際数えきれないほどの本が存在する。だけれど、僕が常に気をつけていることはたった一つだったりする。

それは、

「ソースコードはチャートとして見えるようにする」

ってことだ。

チャートというのはフローチャートでもいいし、PADでもNSチャートでもHCPチャートでもいい。とにかく、コードをパッと読んだ時に、そのコードが処理を表現する何らかのチャートとして見えるようにする、ってことだ。どういう条件で処理が分岐し、あるいは繰り返し、その中でどんな処理をするのか、といったことが「パッと見で」把握できることだ。

もし処理が複雑でチャートとして見えなくなりそうならば、関数やメソッドを作って処理をまとめる。たったそれだけの話だ。何だ当たり前の話だと思われるかもしれないが、それができていないソースコードなんて腐るほど見てきた。しかもプロの現場でだ。

冒頭に述べたように、他人のプログラムはそもそも読みにくいものだ。そして、あるコードを一人が延々とメンテし続けることは極めて稀で、一定期間経つと別の人へとコードのメンテは引き継がれる。その際、他人に少しでも分かりやすいように、「ソースコードはチャートとして見えるようにする」ようにしておけば、無駄な労力も時間も節約できるはずだ。

なんでこんなに熱くなってるかって?まあその辺は察してください(笑)

※この記事について指摘・意見・提案・感想などありましたら下のコメント欄にどうそ。

0 件のコメント:

コメントを投稿