ランダムピクチャーゲーム
子どものオンライン英会話学習の教材のため開発したフラッシュピクチャーゲームです。「スタート」ボタンをおすと選んだ画像がランダムで表示され、時間内にはやく答えれば答えるほどたくさんの得点を手に入れられます。また、得点によってキャラクターが成長したり、難易度も調節できます。
・開発経緯
このアプリを作ったきっかけは、妻がオンライン英会話講師ををしていたことでした。
「何か、すき間時間で子どもが学べるようなものは作れないの?」
自分も教員をしていたので、子どもが興味をひくようにはどのような機能があればいいだろうと考えて作りました。
プログラマーとしての実務経験がない私としては、VisualStudioもC#も、フレームワーク自体の使用経験が殆どなかったため、自分自身の学習に繋がりました。
・開発環境
統合開発環境:Visual Studio
フレームワーク:.NET フレームワーク
言語:C#
・アプリケーション概要
子どもが英会話のすきま時間に、遊びながら英単語を覚える学習支援アプリケーションです。ランダムに表示される画像に対して、時間制限を設け、カウントが0になる前に応えることができれば、ポイントが手に入ります。ポイントによって、自分のキャラクターが成長していきます。また、正解時の音楽が変わっていきます。
・アプリの特徴
フォルダにいれた画像をランダムに繰り返さずに表示します。フォルダを選び、難易度を決めたら「スタート」ボタンをおすことで、開始します。上がタイマー、下がポイントとして、表示されます。
子どもが正解したら、「つぎへ」ボタンをおすことで、得点が加算され新しい絵がランダムで表示されます。
得点が高くなればなるほど、キャラクターが成長していきます。
難易度によっては、タイマーを表示させないことで子どもをあせらせないようにしたり、逆にタイマーのカウントを短くすることもできます。
子どもが学習に集中できるように必要ない文字や項目はなるべく少なくしました。
難易度設定を設けることで、子どもが子ども自身の成長速度に合わせて学習できるように設定しています。
開発における注意点
・ほかの人が読んでもわかるように、可読性向上に努めたこと
・タイマーが独立して動くように、マルチスレッド処理について知識を深めようとしたこと
・例外処理がおきた際への対応について知識を深めようと努めたこと
・コンストラクタ(初期化メソッド)・インスタンス化・クラス・メンバ変数などの基本的なことについて理解を深めようと努力したこと
・なるべくメンバ変数を上書きしないように、値だけ渡すように努めたこと