« Small Basic ×○ゲーム v0.4 | トップページ | プログラミング講座(27) Small Basic検索機能 »

2010/07/31

プログラミング講座(26) 状態遷移

棋譜作成機能の構想」にしたがってプログラム作りを行っているところですが、かなり行数も増えてきたので、ここで一旦公開します。棋譜の再生はできるようになりました。プログラムIDはHHF931-0です。

Igo04
【図19 Igo v0.4初期画面】

[新規]ボタンで対戦を開始します。両者が[パス]するか[投了]ボタンを押すと終局します。[再生]ボタンで対戦結果を再生します。さまざまなバグ(虫とも:プログラムの誤り・不具合のこと)が残ったままです。

・ [再生]中、取られた石が消えない。
・ [投了]後の[再生]が止まらない。(→[X]ボタンでクローズしてください。)
・ [新規]でアゲハマの数がリセットされない。

ここにきて、プログラムの再生や終了後の処理の流れについて整理が必要になってきました。元々の疑似プログラムでは、そこまで考慮していませんでしたが、ちょっと複雑な流れになります。以下がその流れを表した図です。

Photo
【図20 囲碁プログラム状態遷移図】

プログラムのいくつかの状態(あるいはモード)の変遷を表しており、状態遷移図と呼ばれています。丸が状態を表し、矢印があるアクションに伴う遷移を表します。今回公開したIgo v0.4では「新規」の状態と「終了」の状態が一つになっています。このままだと、棋譜ファイル名を入力するときに、「開く」(入力)するためなのか、「保存」(出力)するためなのか間違えやすいだろうと思い、上図ではそれを分けました。

これに伴って[新規]ボタンの意味も変わります。新たに[対戦]、[保存]などのボタンも作っていきます。

(つづく)

|

« Small Basic ×○ゲーム v0.4 | トップページ | プログラミング講座(27) Small Basic検索機能 »

囲碁」カテゴリの記事

Small Basic」カテゴリの記事

コメント

コメントを書く



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




トラックバック


この記事へのトラックバック一覧です: プログラミング講座(26) 状態遷移:

« Small Basic ×○ゲーム v0.4 | トップページ | プログラミング講座(27) Small Basic検索機能 »