プログラムってやつぁ

蒸発(僕)は、会社でCOBOLでプログラムを組む練習をしています。今日は、無駄に沢山出る帳票(うちの工場の倉庫に保管してある商品の在庫を管理するための紙。A4縦よりちょっと横幅の大きい紙にして毎月250㌻も出る)を、集約して枚数を少なくする様なのを作りました。COBOLってのは「手続き型言語」といわれる部類の言語で、昔からあるシステム(銀行とかにあったりする)を今までずっと使っている会社なんかで使われていたりします。
今回の印刷プログラムで行くと、「倉庫にある在庫に関する情報を全て含んだファイルから必要なデータを抜粋する(セレクト)プログラム」→「印刷を見やすくするために並べ替える(ソート)プログラム」→「事務員が見て意味が判る様に印刷する(プリント)プログラム という3本立てで作成するんですが、今回の集約では、プリントプログラム一本でそれを実現しようとするとものすごく複雑な内容になってしまう可能性がありました。ま、実際ちゃんと動けば問題ないのだけれど、他の状況で、誰かがそのプログラムを修正する必要が出てきたときに、複雑なプログラムで作られていると、修正すること自体が困難になってしまうんですね。修正したと思っても、別の問題が出てきてしまったりとか…。そういう問題を解決する為に今回は「セレクト」→「ソート」→「集約印刷の為のファイル作成」→「プリント」という4本立てにしました。そしたらなんとか僕レヴェルでも完成することが出来ました(ような気がする(笑))。同じ答えを出すということは当たり前のことで、どうアプローチするかは、固定概念にこだわっているだけではいけないのです。どの方法をとるのが一番いいのか。これはまだ3年目の僕には難しい問題なのでした。ん〜。まだまだ修行が足りませんのぉ。そろそろヤヴァイよなぁ。うん。もっと修行して色んなことを感じてパワーアップしていきたいです。音楽も仕事も英語の力も。