2009/07/18に第11回北海道開発オフがあったので参加してきた。 以前から存在は知っていたが、都合が合わず参加できないでいた。 オープンソースカンファレンス で少しお話をして、これは参加しなければと思い行ってきた。 ただ自分はノートPCを持っていないため、開発する事はできない。そこで前に仕事で気分転換でやった「紙と鉛筆でコーディング」をやってみることにした。多分フルタイムそれでは飽きるので、 先日購入した「初めてのPython」 を持っていった。 場所はちょっと迷ってしまい、 smokeymonkey さんに助けてもらった。 午前中は「初めてのPython」を第3章を読んだ。ちょっとBlogネタを見つけたので後ほど書く。 午後からは、紙でコーディングを始めてみた。 ネタは、最近夜更かしが多くなってきたので「 0時に強制的にシャットダウンするアプリケーション 」 を考えてみることにした。 ネットで探せば指定した時間にシャットダウンするフリーウェアは多く見つける事ができるが、ほとんどはスタートアップで起動して常駐するタイプ。用があるのは0時ジャストのみ、なのでそれ以外は黙っていてくれ、と。Windowsの場合はタスクスケジュールというのがある。指定時間に何かする、というのはこれで良い。 あとは実行したらシャットダウンするプログラムを作ればよいのだが、実はOS標準でそういった機能がある。 Windowsの場合は > shutdown -s のようなコマンドでシャットダウンできる。これをタスクスケジュールに登録すればもう要求は満たされてしまう。ただし、それで終わってしまっては面白くないので、あえて面倒くさい方法でつくってみる。言語はVB.NETでいくことにする。 簡単に仕様をまとめる 実行するとシャットダウンする シャットダウンまでは、数秒カウントダウンする カウントダウンは画面に表示する カウントダウンする秒数は指定可能にする シャットダウンのキャンセルは不可 必要そうなクラスを洗い出してみる。ムダにマルチプラットフォームを念頭にしたりした。 Programクラス:アプリケーションのエントリポイントなどメインのクラス MainFormクラス...