課題をクリアして冒険しよう!プログラミング学習ゲームCheckiOをやってみた



課題をクリアして冒険しよう!プログラミング学習ゲームCheckiOをやってみた
目次
  1. ゲームを遊ぶようにプログラミングを学ぶ
  2. プログラマーのためのゲーム
  3. CheckiOプログラミングの体験レポート
  4. ゲームに参加する
  5. プログラミングの課題を選ぶ
  6. 課題の仕様を確認する
  7. ブラウザ上でプログラミングができる
  8. ヒントが確認できる
  9. レベルアップして次へ進む
  10. ゲーミフィケーションの要素
  11. CheckiOプログラミング体験レポートのまとめ

ゲームを遊ぶようにプログラミングを学ぶ

「プログラミングの勉強は退屈」「一つ一つのプログラムの意味は分かるけど複雑な処理を作ろうとすると、どうしたらいいか分からなくなる」そんな悩みはありませんか?こんな悩みを同時に解決してくれるのが、CheckiO(https://www.checkio.org)です。CheckiOプログラミングはゲームをしながら、プログラミングを学ぶことができるWebサービスです。

プログラマーのためのゲーム

checkio_1

ゲームとプログラミング教育の相性は非常に高いと言われています。かねてより「ゲーミフィケーション」ともよばれる手法が提案されています。ゲーミフィケーションは、課題をクリアするとポイントなどの報酬が得られるといったゲーム的な要素を、ゲーム以外の分野に適用する方法です。プログラミング教育に、娯楽性やストーリー性といったゲームの要素を加えることで、学習への意欲が増し、継続的に取り組むモチベーションにつながります。CheckiOプログラミングは、このゲーミフィケーションの最先端の事例といえます。

CheckiOプログラミングの体験レポート

ゲームに参加する

checkio1

CheckiOプログラミングにブラウザからアクセスすると、FacebookやGithubのアカウントを用いてユーザー登録することが求められます。サインアップすると、品質の高いグラフィックデザインに驚かされます。ユーザーはある島から旅をスタートさせます。プログラミングの課題を解いていくことで、他の島へと移ることが可能になります。

プログラミングの課題を選ぶ

checkio2

最初の島では、十数個の課題が提示されます。例えば、中央値を算出する、パスワードの強度を求めるといった課題があります。どれもが、情報科学の基礎で学ぶような概念であり、開発者として覚えておくべき内容になっています。課題の難易度が設定されていて、「Elementary(基礎)」「Simple(簡単)」「Moderate(中級)」「Challenging(上級)」の4段階があります。

課題の仕様を確認する

checkio3

各課題では、求められる機能が具体的に記載されます。どのような入力データに対し、どのような出力を返せばよいのかが指定されます。実際のシステム開発の仕様と同様なので、実務を見据えても、CheckiOプログラミングは良い経験になります。課題の説明は日本語での表示も可能です。

ブラウザ上でプログラミングができる

checkio4

CheckiOプログラミングはブラウザ上でPythonの開発を行う開発環境を提供します。Pythonは科学技術計算やWebプログラミングに汎用的に用いられるプログラミング言語です。通常は開発環境の設定は難しく、初心者が学習を始める大きな壁になってしまいますが、CheckiOプログラミングは何も設定を行う必要がなく、ブラウザの画面上ですぐにプログラムを書くことができます。画面上でプログラムを書き、「Run&Check」を押すと、その実行結果が表示されます。

ヒントが確認できる

checkio8

もし、どのように課題を解いたらよいか分からないときは、ヒントを見ることができます。動画を使った解説もあります。関数について学び、その関数を使って課題を解くことで、より理解が深まるでしょう。

レベルアップして次へ進む

checkio5

無事に課題が解けると、「Task solved!」というメッセージが表示されます。課題を解いた後は、別解を確認することができます。短い行数で解く方法、処理速度を重視した方法など、複数の別解を見ることができます。自分のプログラムと照らし合わせることで、より良いプログラムの書き方を学ぶことができます。

ゲーミフィケーションの要素

checkio6

ゲーミフィケーションの要素として、課題を解くたびに、ポイントを獲得し、レベルを上げていく点があげられます。レベル上位者はランキングのページに表示されます。レベルを上げていくにつれて、取り組むべき課題の数や種類を増やしていくこともできます。長期にわたって、楽しみながら、プログラミングスキルを向上させていくことができるでしょう。さらに、フォーラムでは開発者同士の活発な議論も行われています。英語で記載されていますが、新しい課題のアイデアなども議論されているので、覗いてみると面白いでしょう。

CheckiOプログラミング体験レポートのまとめ

CheckiOプログラミングの体験レポートをお送りしました。CheckiOプログラミングはゲーム性を取り入れたプログラミング学習の最先端のサービスです。見た目の美しさも高度ですが、学習の観点からも非常に質が高いことが分かりました。レベルを上げるなどのゲーム的要素を楽しみながら、人気のあるプログラミング言語であるPythonを学び、さらに、情報科学の基礎となる概念を理解することができます。多種の課題を解いていくことで、実務で必要となる複雑な処理も解けるようになっていくことでしょう。

関連記事

CodeCampus編集部
この記事を書いた人
CodeCampus編集部
\無料体験開催中!/自分のペースで確実に習得!
オンライン・プログラミングレッスンNo.1のCodeCamp