処理のコスト

初めての仕事はデバイスドライバ作成でした。

 

パソコンのOSがDOSの3.0とかの頃に、パッケージソフトのプロッタや画面表示用のデバイスドライバと言われるもののプログラムを作成するのが人生初のお仕事でした。

 

画面表示は16色で画面サイズが640x480とか、とまた懐かしい方面に進んでいきそうなので軌道修正しますが、今みたいにライブラリが揃っているわけでは無いです。線を書く、四角を書く、という程度のライブラリしか無いので、画面表示でプルダウンメニュー的なものを作るとなると、ここから線で書いて、ここは四角で、という感じで作った記憶があります。

 

その中で、プログラム本体から「ここにこのサイズでメニューを出せ」的な指令が来たら、上から1ピクセルずつ、メニューの左枠ー>中のボックス→メニューの左枠という感じで作り、できた~とQA部に出すと「表示が遅すぎる!」とのこと。

環境にもよったのですが、QAのパソコンだと確かに遅い。普通だとパパっと出るところが、1行ずつ画面上で書かれているのがわかるくらい遅いのです!

 

いろいろ考えて、1行ずつ書くと遅いので、全体のサイズは受け取っているからその中の四角、右枠、左枠、下枠、と4つを簿\ボックスで書くようにすると、遅いパソコンだとやっぱり書かれている途中はわかるのですが、明らかに前よりは早いので、そもそものプログラムを使用することに集中できる様になりました。

 

最近の話に飛びますが、プログラムやSQLだとコストが高くつく処理があったりしますが、事前にコストのおおよそを知ることができたり、そもそも他の方たちの知見が色々ネットで共有されていたり、と昔のようにコストも考えずにやっていた(自分だけかもしれませんが)ときに、そんなツールや知見が共有されていたらなぁ、と思ったりもしてみました。

 

おい、何の話や!

へぇ、昔話だす

おあとがよろしいようで…