良くないプログラムに2種類あります。 1つは手抜きのプログラムです。プログラムのことがよく分かっている者で も、1度しか使わないプログラムとか、動作確認のためだけとか、とにかく数 時間で作り上げなければ作ること自体が無意味になるような場合には手抜きの プログラムを作ります。プロのプログラムだって、メンテナンスのまったく必 要のないときには、徹底的に手抜きのプログラムを作ります。ただし、元々腕 がよいのですが、理由があって手を抜いているわけです。したがって、プログ ラムの筋はよく、何をやろうとしているのか見当もつかないということはあり ません。 もう1つは、下手なプログラムです。コンピュータシステム全体のこととか、 プログラミング言語の理解不足、経験不足などにより、やるべきことを理解で きないまま書き上げたプログラムです。ムダが非常に多く、プログラムが混乱 していて、何をやろうとしているのか読み取れないものです。自分で書いたプ ログラムの面倒を自分でできないでいるのです。 この2つは全く違います。よく「汚いプログラム」という言い方をします。 この場合は、だいたい下手なプログラムを意味しています。下手なプログラム に対して「汚い」と指摘すると、時間がないからとか、忙しかったからとか理 由をつけますが、それならば手を抜けば良いのです。上手がいくら手を抜いて も下手なプログラムを作れるわけではありません。上手が手を抜いたプログラ ムは手元にいっぱいあるのですが、診断室の対象になるような汚さはありませ んでした。上手が下手のふりをして下手なプログラムをねつ造しても、うまく ねつ造できません。上手な者には下手な者のまねをするのは困難です。 「汚い」というのにも、様々なパターンがあります。ソースリストが見かけ 上ぐちゃぐちゃしている程度のから、設計そのものが完全におかしいのではな いか、全部廃棄して作り直す以外に手はないものまであります。全部廃棄して 作り直すにしても、どうして完全な再作成をすべきかを理解しないままで作業 すると、結局同程度のものができることになります。これは指導するときに非 常に注意しなければいけないことです。細かい点をいっぱい指導するより、重 要などうしようもない点を1つ2つ指導すれば、見違えるようなプログラムを 作ってくるはずです。 診断室では、下手の下手たる本質をできるだけ研究し、まとめようとしたも のです。下手にも色々な種類があり、救える者もいれば、もう救い難い者もいっ ぱいいます。自ら上手になろうと努力している者が救われるだけでしょう。
|