« 最近気になるニュース。 | トップページ | 体は速攻で。 »

2005年5月26日 (木)

最近の課題。

たいてい自分の必要なユーティリティーは誰かがすでに作ってるし、仕事で必要なものはMacroか、多少こみいっていてもVBAがあれば何とかなるので、そんなにプログラミングの課題が転がっているわけではない。

なぜかこの脳みそをくすぐるのは『パズルを解かせる』ことなのだ。

はっきし言って、他人の作ったプログラムでパズルを解くことには何の興味もない。どこにも面白いとこないじゃんねぇ。ふだんの自分の思考プロセスを移植することに快感があるのである。

今回はなんとなく、パズルジャパンのサイトで展開されているニコリのパズルの中から『ひとりにしてくれ』を課題にしてみた。縦横に同じ数字を残さない、計算ゼロというシンプル極まりないルールは、一度でもソリティアやマインスイーパにはまったことのある人には毒かも。実はこの選択が後々のプログラムの実装を大いに助けるのだが、この時点では一番ハマっていたというだけ。

とはいえ、ちゃんとプログラミングに取り掛かるのは就職以来なので、ちょっと慎重に言語をきめてみる。

基本的にパズルを解くのに、VBの速度はキビシイことが多かったので、最終選考からははずしてみる。欲張りにもサイズを可変にすることにしたいので、Cも落選。自分の技術力のせいもあるが、動的確保が必要なのがわかっててCを選択するメリットってのもないような気がする。以前に力技でExcel+VBAでパズルを解くということをしてみたが、仕事でも使うVBAを家でまで使うこともないかと却下。

あとはVC++かJavaか。入出力にGraphicsを使いたいとゆう更なる欲望と復帰第1戦ということもあり、とりあえずJavaでスタートしてみて、速度かシステムアクセスに限界が出てきたらVC++に移植するという展望。

さて、たいがい『ちゃんとした』プログラムになるまでに自分の場合、最低でも2回はプログラムを作り直す。つ~ことは、試作も含めて3本。この辺が徒然なるまま完成を見ない原因でもあるのだが、しょうがないことにする。ポリシーと呼んでみる。

というわけで試作の開始。入出力がGraphicになるので、ClipBoardからの取り込みを復習、そしてViewクラスとBrainクラスの設計・実装を同時進行、めんどくさいものはすべてBrainに放り込むという方針だけ決定して、続く。

|

« 最近気になるニュース。 | トップページ | 体は速攻で。 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/109403/4228144

この記事へのトラックバック一覧です: 最近の課題。:

« 最近気になるニュース。 | トップページ | 体は速攻で。 »