« 読書日記『ここ半年分くらいの読書記(その1)』 | トップページ | 読書日記『と言うか読書メモ』 »

2006年12月23日 (土曜日)

アナウンサーとコメンテーター


「クロワッサンのレシピ」と「ダメなソースコードコメント」と内容的に近いが、こういうアプローチもありかなと言う内容。

プログラムのコメントには性質として2つあるように思う。
さて、あなたのプログラムコメントは「どっち派」だろうか?

背景としてはTV番組の「スポーツ」とか「料理の鉄人」とかを想像すると良いかも。

A.アナウンサー的コメント
特徴
A-1.「目の前で起きている事をそのまま伝える」
A-2.「現場での臨場感を伝える」

B.コメンテーター的コメント
特徴
B-1.「アナウンサーの言った内容の本質を伝える」
B-2.「時にはこれから起こるであろう事を予言的に伝える」

A-2はソースコードの場合、臨場感も何もソースは目の前にあって、それがすべてなので当てはまらない。つまりほとんどがA-1という事。

B-2はソースコードの場合、時系列でこれからの展開が読めないと言う訳ではないので(実際そうだとしたらちょっとオカルトめいている・・・)、現実性は低い。つまりほとんどがB-1という事

という事であなたのソースコードのコメントはどうだろう?

仮に最初に設計書にある処理内容をコメントを書いてPGしていった場合はA-1となるのは自明。

メンテナンスの事を考えるとA-1はガイドラインとしては有用(特に仕様書の内容を1対1で直接的に表現するのが難しい言語だった場合)だが、やっぱり本当に欲しいのはB-1のコメントだろう。

総括して、Aタイプのコメントは上記の様にすべてが悪だとは言い切れないので理由があれば使っても構わない。そこに加えBタイプのコメントを各能力を養っていくのがベストだろうと考える。

自分自身がどうか?と聞かれると、「両方使うことがある」と言う解答だろうか。初めて使う言語なんかだと「自分が覚える」意味でAタイプを多用するだろうし、プログラミング初心者に対しても最初はAタイプを勧める。
慣れた言語や、その言語に精通している人が多いという前提ならば当然ながらBタイプを多用する。読む人がそのコメントの周りの数十行しか見えない状況を想定して「なぜこう書いているのか?」を書くなど。こう書いておくと貧弱なテキストエディタしか手元に無いケースやわざわざIDEを立ち上げるまでも無いケースなんかで有効だったりもする。

最後に両方のタイプで問題となるケースは「ソースを修正してコメントのメンテナンスを忘れる事」。書く人も注意が必要だが、往々にしてこう言った事は起こるので、読むほうも「たまにそう言う事」があると言う認識で望んだほうが多分幸せになれると思う。

|

« 読書日記『ここ半年分くらいの読書記(その1)』 | トップページ | 読書日記『と言うか読書メモ』 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/2790/13172466

この記事へのトラックバック一覧です: アナウンサーとコメンテーター:

« 読書日記『ここ半年分くらいの読書記(その1)』 | トップページ | 読書日記『と言うか読書メモ』 »