2010年6月26日土曜日

オブジェクト指向と個人差

これまで仕事したプログラマーの同僚にもC++よりCを好んで使う人、Perl 、PHPで開発をしているのにクラスを作ることを好まない人っていた。
オブジェクト指向が好きな私からは見ると、まるで石器時代の生活をしているように見えた。「この人はどうしてこんな便利ものを使わないんだ?」って。

私がオブジェクト指向が好き好んで使っている理由は、オブジェクト指向でない開発を行った場合、グローバル変数と関数の記述位置を上手く把握出来くなるからである。「あの変数ってどこに書いていたっけ?」ってことが良くあるし、スパゲッティーコードに陥りバグの修正に四苦八苦する。
私個人の傾向として「単純記憶」が苦手だ。それを補うために関連性を記憶の動機付けに利用する。"BAR"っていうグローバール変数をどこで書いたかを覚えておくより、"FooクラスのBarメンバー変数"って憶えていたほうが忘れずにすむし、より多く把握しておける。結果的にオブジェクト指向でプログラムの設計を行うようになる。プログラムの規模が拡大した場合、記憶力だけでは全体を把握出来ないので、思考力で対応している。

オブジェクト指向を好まない人って、どんなにソースコード長くてもファイルが多くても、グローバル変数と関数の記述位置を細かく把握していているみたいだ。なおかつバグも少ない。「単純記憶」が得意なんだと思う。

各々のプログラマーがオブジェクト指向を好むか好まないかは、単純な好き嫌いの問題だけでなく、「記憶力」や「思考力」の個人差も要因なので、オブジェクト指向を好まない人を単純に非難するのは良くないと思う。

0 件のコメント:

コメントを投稿