久しぶりの開発

で、Sig3がそういう意味ではなかなか良いので電卓が欲しくなりました。ドコモの携帯持ってないからExcelもどきがDLできないし。シェアウェアだとあるらしいけど面倒だし、フリーウェアだとcalQがあるけど.NETCompactFramework入れるのが面倒だし。(暇人なのにものぐさだな〜)

古いPCを立ち上げたらeVCがインストールされたままになっているのを発見したので、電卓ソフトを作ってみました。SigmarionSDKがなくてもH/PC ARM用アプリを作れば動くので。

まずは本物の電卓の挙動を観察してテキトーな状態遷移図を書きました。
そのあと開発環境整備スタート。WindowsCE向け開発はほんとに久しぶりで、すっかり忘れ去ってます。。最初にプロジェクトを作る時の対象CPU指定から、エミュレータの起動方法など、何から何まで試行錯誤。なんとか空プロジェクトをエミュレータ上で動くところまで漕ぎ着けて、やっとコーディング開始。しかしスケルトンコードを見てもちんぷんかんぷん。(MFC使用なのにCWndクラスの存在自体忘れちゃってたし。)しかたがないので、昔自分が作ったソフトのコードを観察。真似して似たような処理を書いていくうちに、だんだんと思い出してきました。所詮電卓、GUI周りもシンプルなので、昔のコードを見るのは最初だけで済みました。しかし、限りなくCっぽい(C++っぽくない)コードにしかならない。。あと、Ctrl+スペース(eclipseでのコード補完)をついつい連打してしまう自分が可笑しい。でも基本的に電卓っぽく動くところまではサクサクたどり着きました。あとはデザインの修正だ〜。

やってみて思ったのは、ブランクを乗り越えるには記憶よりもモノが頼りだな、ということ。昔のコードには昔の知識が残されているので、非常に良い手掛かりになりました。仕事に復帰するとしたら、何か既存システムの機能追加や改修からスタートするのがいいだろうなぁ。開発環境自体の使い方のように、既存コードなどで記憶を呼び出せないところはチュートリアルからやるとか、他の人に教わるとか。


ひさしぶりの開発、なかなか楽しかったです。ぜんぜん疲れ目が気にならなかったし。WindowsCE系は、いろいろ面倒くさいプラットフォームなのでフリーソフトが少ないから「あんなソフトが欲しい」と思ったときに「じゃ、自分で作るか」という方向に行きやすいのが自分にとっては有用だったりします。