
子どもの頃にこんなの欲しかった! プログラミング学習ゲーム
小学校におけるプログミング教育の必修化を受け、未就学児向けを中心に、プログラミングの基礎知識を身につける学習玩具が数多く発売されています。子どもから大人まで、楽しめるプログラミング学習ゲームをご紹介します。
目次
1.プログラミング学習には様々な方法がある
2.プログラミング必修化のカリキュラム導入に備えた学習ゲーム
2.1.基本的な操作を習得するための学習活動
2.2.論理的思考力を身に付けるための学習活動
3.プログラミングをゲームで学ぶメリット
4.PCでプログラミングを学べる学習ゲーム
4.1.初級~中級
4.1.1.CodinGame
4.1.2.CheckiO
4.1.3.RubyWarrior
4.1.4.FightCode
4.2.中級~上級
4.2.1もし次の常駐先が女子エンジニアばっかりだったら
5.スマホ・タブレットでプログラミングを学べる学習ゲーム
5.1.Swift Playgrounds
5.2.Progate
5.3.LightBot
5.4.トライビット ロジック
6.プログラミングの楽しさを思い出そう
1.プログラミング学習には様々な方法がある
プログラミングを学ぼうと思っても、「内容が難しくてついていけなかった」という経験はありませんか?
プログラミング学習にはただひたすらコードを書いたり覚えたりするだけではなく、様々な方法があります。中でもゲームを用いた学習方法は小中学生にもわかりやすいと評判です。
そこで今回は、学習ゲームを利用したプログラミング学習について解説します。
2.プログラミング必修化のカリキュラム導入に備えた学習ゲーム
2017年に改定された学習指導要領により、2020年から小学校でのプログラミング学習が必修科目となります。これは現代社会では不可欠となっているコンピュータを積極的に活用するための知識だけではなく、子どもの判断力や学習能力も育てることを目指したものです。
こうしたカリキュラムの導入に備えて、プログラミングの学習ゲームが注目されています。特に学習ゲームでは、新学習指導要領が定める次の2つの内容についても網羅できると言われています。
2.1.基本的な操作を習得するための学習活動
指導要領で定められている内容の一つが「基本的な操作を習得するための学習活動」です。児童がコンピュータで文字を入力するなど、学習の基礎として必要となる情報手段の基本的な操作を習得するための学習活動を指します。主にタイピングなど基本的なコンピュータ操作が該当します。
2.2. 論理的思考力を身に付けるための学習活動
定められているもう一つの内容が「論理的思考力を身に付けるための学習活動」です。プログラミングを体験しながらコンピュータに意図した処理を行わせるために必要な、論理的思考力を身につけるための学習活動を指します。プログラミング学習を通して、コンピュータに指示を出すための考え方を育てます。
3.プログラミングをゲームで学ぶメリット
プログラミングは一見すると難しそうに感じるかもしれません。しかし、ゲーム感覚で学習することで、プログラミングに対するハードルを下げて楽しみながら勉強できるようになります。
ゲームの場合、学習の進捗に合わせてレベルアップしていくものがほとんどです。そのため、子どもたちは次のレベルに進むために苦手なところに何度も挑戦し克服できるようになっています。
子どもたちはゲームが大好き。楽しんでいるうちに自然とプログラミングのスキルが身につくのが、ゲーム学習の最大のメリットと言えるでしょう。もちろん、大人のプログラム学習にも最適です。

4.PCでプログラミングを学べる学習ゲーム
4.1.初級~中級
4.1.1.CodinGame
ブラウザ上でコード作成、デバッグ、テストの各プロセスが実行できます。そのため、開発環境をつくらずに20種類以上の言語を試すことができます。
1つの課題を別の言語で再解答できるので、複数の開発言語を並行して学習したり、比較学習することができます。チームプレイの機能がある他、世界規模のプログラミングコンテストも行われています。
4.1.2.CheckiO
ID登録だけでブラウザ上で利用することができ、開発環境などの準備は不要です。
プログラミングの課題に解答しないとID登録ができません。難易度としては、多少のプログラミング経験があれば解けるレベルです。
Elementary(基礎)からChallenging(上級)までの4段階を、問題を解きながら進めます。解答するとほかの解答者のコードを見られるようになり、優秀なソースコードを見て復習できます。同様に自分の解答を閲覧した人からレビューがもらえることもあります。
4.1.3.RubyWarrior
英語オンリーのインタラクティブゲームになっているため、多少の英語読解力が必要です。
画面上に表示される課題をクリアするコードを入力し、正解すると次のステージに進めるクエスト型の構成です。
初級(Beginner)と中級(Intermediate) の2段階で、それぞれ9つのステージにレベル分けされています。初級から条件分岐を利用した課題が出され、数十行に及ぶコードで答えなければなりませんので、if/elseの基本構文レベルはマスターできていないと難しいと感じるかもしれません。
4.1.4.FightCode
JavaScriptでロボットの動作をプログラミングし、ほかのユーザーのロボットと対戦させるゲームです。GitHubのアカウントで利用できます。
4.2.中級~上級
4.2.1.もし次の常駐先が女子エンジニアばっかりだったら
新米女性エンジニアを育成するシミュレーションの形式で、主人公に課されるプログラミング問題を解いていきます。ソーシャルゲーム感覚で、開発プロジェクトを疑似体験できるようになっており、ITエンジニアを目指す方にもよいでしょう。ほかの参加者のコードを閲覧して学べるようにもなっています。
5.スマホ・タブレットでプログラミングを学べる学習ゲーム
スマートフォンやタブレットが普及したことによって、最近ではスマホ・タブレット向けの学習ゲームも増えており、手軽に楽しめるとして人気を集めています。ここでは代表的なものを紹介します。
5.1.Swift Playgrounds
iOSやmacOS用アプリを開発するための言語であるSwiftを、ゲーム感覚で本格的に学ぶことができます。アプリだけでなく、組み立て式ロボットやドローンにも対応しており、リアルなおもちゃを使ってプログラミングを学ぶことができます。
やや難易度が高めのではありますが、プログラミング未経験でも学ぶことができるため、コンピュータに興味を持ち始めた小学校高学年のプログラミング学習に最適と言えるでしょう。
5.2.Progate
かわいいキャラクターと一緒に、ゲーム感覚で楽しくプログラミングが学習できます。1レッスンが短く、イラスト中心の説明で直感的にわかりやすいスライドを2〜3枚見てから実際に自分でコーディングするため、一つ一つ理解しながら進められるようになっています。対応している言語も幅広く、基礎から実践的にプログラミングを学習したい児童にピッタリです。
5.3.LightBot
画面上のキャラクターの動き方をブロックでプログラムするシンプルなゲームです。キャラクターがいかに効率よくポイントを通過できるかパズル感覚で考えながら、プログラミングの考え方を身につけることができます。内容はシンプルですが、問題をクリアしていくうちに自然と論理的思考力が身につくようになっています。年齢によって難易度の違う2種類のアプリが用意されているので、小学校低学年から感覚的にプログラミングの基礎を学習できます。
5.4.トライビット ロジック
4種類の論理演算パネルを組み合わせて「バグ」を倒し、キャラクターを助けるゲームです。プログラミングにおいて重要かつわかりづらい論理演算を、ゲームに夢中になっているうちに自然と身につけることができます。コンピュータの仕組みを学びたい児童からエンジニアを目指す学生、大人の頭の体操など、幅広いニーズに応えられるようになっています。
6.プログラミングの楽しさを思い出そう
ユーザーからの評価が高いゲームを中心にピックアップしてみましたが、そうはいっても現役バリバリのエンジニアの技術習得には物足りない部分もあるかもしれません。CやCOBOLからRuby、Pythonなど幅広い言語に対応するものがあること、開発環境などの事前準備なしで、新しい言語を体験できる点がプログミング学習ゲームの魅力だと思います。未経験の開発言語をちょっと試してみたいとき、プログラミング未経験からSEをめざす方の自己学習などに役立つでしょう。
ゲームとして、仕事の合間の息抜きとしても良さそうです。学習ゲームを通じてプログラミング習得の楽しさを思い出し、新技術へのチャレンジ意欲をリフレッシュしていただけたら素敵だなと思います。
※「Geekroid」のプログラミング教育関連記事は以下の通りです。
「小学校でのプログラミング教育必修化へ--先生を支援するICT支援員がいない!」