雑記
エレガントなプログラム
最終更新:
匿名ユーザー
-
view
知らない人たちから見るとプログラマって言うのはなんかわけ判らんことをごちゃごちゃやってる人たちって言う印象あるのではなかろうか。
多少知っている人から見ても、複雑な処理をやってるプログラムを見たら、やっぱりプログラミングって難しいとか、思っちゃいそう。
私もそんな印象を持っていたクチなんですがね。仕事としてやってみて、いろいろな人のソースコードに触れる機会があってそうではないことに気付きました。
判っている人のソースって、仕方のない場合を除いて極力ロジックに頼らない設計になってるんですよね。関数の機能ごとの分け方も上手いし、テーブルの使い方も上手。それらを上手く組み合わせて汎用性があってかつシンプルなコードになってるんです。
だから、全体の見通しもいいし、不具合が入り込みにくい。もし不具合があっても対応がしやすい。
テーブル等を使うことで汎用的な作りになっているし、拡張もしやすい。
テーブル等を使うことで汎用的な作りになっているし、拡張もしやすい。
エレガントなプログラムって言うのは、こんな感じなのかな、と。
いったん関数自体の実績ができてしまえば、処理項目が増えてもロジック修正なしでテーブルに項目を追加するだけで対応できちゃったり、そうでない場合でも驚くほど修正箇所が少なくてすむ。
まさに、ソフト(柔軟性がある)でハード(堅牢性・信頼性が高い)プログラム。
まさに、ソフト(柔軟性がある)でハード(堅牢性・信頼性が高い)プログラム。
不思議なのはそんなコードを書く人があんまりいないこと。ロジックをこねくり回してごりごり力技で書かれたソースがほとんどだったり(今のところ、人のことあんまり言えないんだけど)。
個人的な趣味のプログラムでも、このことは意識したほうがいいと思う。メンテナンス性も拡張性も、感動するくらい違いますよ。ほんと。