小・中学校でプログラミングが義務教育化したら親はなにを知るべきか・・・

現在、弊社では小学生から社会人のためにプログラミング教室を開講しています。
2019年には義務教育化するかもしれないと言われているプログラミングですので、受験にはもちろんのこと就職時など、将来はできて当たり前の必須スキルとなりえるかも?
小学生や中学生の子どもがいる親は今のうちからプログラミングのことを少しでも知っておいて損はないですよ。

プログラミングのことなんて1ミリもわからない

プログラミングのことなんて1ミリもわからないと思います。
だから、誰でもわかるものからはじめてみましょう。

ということで今回は弊社が運営している「プログラミング教室そら」で使用している小・中学生向け教材&プログラミング言語を紹介していきます。

文科省推奨「プログラミン」

スクリーンショット 2015-10-23 8.52.59

文科省が推奨しているプログラミング言語で、絵のブロックをつなげてプログラミングするので誰でも使用することができます。
ほぼ間違いなく、プログラミングが義務教育化した場合は「プログラミン」が教材に選ばれるでしょう。

スクリーンショット 2015-10-23 8.52.33
ブロックが実際の行動を示しているのでわかりやすい。

とにかくわかりやすい、見やすい、やさしい

プログラミンはめちゃくちゃ見やすいしやさしいです。
自由度はあまり高くないですが直感的な組み立てで簡単なので
幼稚園や小学生の子どもは勉強とも気付くことなく真剣に取り組むことが可能です。

プログラミンのページはこちら

MIT制作「スクラッチ」

こちらは「プログラミン」の元になったプログラミング言語でMIT(マサチューセッツ工科大学)が開発しました。
プログラミンと同様英単語などは使用せずブロックを重ねてプログラミングするのですが自由度が段違いで普通のプログラミング言語並みになんでもできちゃいます。

スクリーンショット 2015-09-29 12.26.10

プログラミング教室では両方の言語を使用しているのですが、
スクラッチの環境(用意されているパーツやファイルの管理方法など)は
実際の職業で利用されるプログラミング環境とほぼ一致しているので
確実にスクラッチの方がプログラミング学習の初期導入には適していると思います。

これから何も知らない子どもにプログラミングを
勉強してほしい!と思ったあなたは是非、スクラッチを
子どもと一緒に勉強することをオススメします。

スクラッチのページはこちら

プログラミング教室そらで使っている教材

プログラミンの本

スクラッチの本

実際にプログラミング教室で教えたこと

そうは言ってもどうやって勉強したらいいかわからないという場合もあるでしょう。
そんなあなたのためにプログラミング教室そらでの初めの1ヶ月の授業内容を簡単に説明します。

その中で、いかにスクラッチが小・中学生向けの
プログラミング言語として優れているかがわかると思います。

【1週目】準備〜初めてのプログラミング

プログラミングを始める時にはだいたい下準備みたいなことをしないと始めることができません。
スクラッチも同じでユーザー登録をしないと使えない機能があったりするので準備から始めましょう。

スクラッチのトップページに行くとこんな画面が出てきます。

スクリーンショット 2016-02-04 9.50.17

右上のScratchに参加しようからユーザー登録を済ませます。
ユーザー名とメールアドレスを記入すればあとは指示に従ってメールアドレスの確認があるだけなので登録方法は詳しく書きません。

登録が済んだらこんなことができます。

  • みんなが作った作品を閲覧できる。(実際にソースコードが見れます。)
  • リミックスという機能を使って他の人が作った作品を利用することができる。
  • コミュニティーで情報交換ができる。
  • 知識の共有ができる。

TwitterやFacebookみたいなSNSと同じですね。
プログラマーの方なら誰もが知っているStack OverflowとかGitHubと同じような機能が搭載されてます。

初プログラミング

登録を済ませたので早速プログラミングをしていきましょう。
トップページ左上の「作る」から始めることができます。

スクリーンショット 2016-02-04 10.27.06

かわいい?ネコのキャラとプログラミング画面が出てきたと思います。

スクリプト、と書いているところにたくさんのブロックがあるのでそれを組み立てることでこんなプログラミングが可能になります。
中身はこんな感じ。

スクリーンショット 2016-02-04 11.07.27

繰り返しの処理がこんなに簡単に書けます。
「ずっと」っていうブロックもあります。

できたプログラミングのファイルを保存すれば続きから始めることもできます。

1週目の授業ではシューティングゲームで動かすプレイヤー(自機)の動きとアニメーションを作成しました。

プレイヤーに3種類の画像を用意して、「もし」というブロックを使っていきます。

スクリーンショット 2016-02-04 11.22.49

できたものが以下、矢印キーで動いていますね。

ポイントは左向き矢印を押したからといって左に進むわけではないというところ。
プログラミングはお願いした通りに動くので座標を考えなければなりません。
右側がx座標の+になるのでー5としないと左には動いてくれません。

【2週目】乱数と当たり判定

2週目は敵キャラを作りました。

乱数を使って敵キャラをランダムな位置から出現させます。

スクリーンショット 2016-02-04 11.29.21
ランダムに敵が出てきます。

スクリーンショット 2016-02-04 11.29.39
簡易版の当たり判定です。

だいぶシューティングゲーム感が出てきましたが、まだシューティングできません。

【3週目】ゲームの基礎完成

3週目でシューティングゲームの基礎が完成します。

スクリーンショット 2016-02-04 11.43.02
弾丸発射のためのスクリプトです。

スクリーンショット 2016-02-04 11.40.26
敵キャラに弾丸が当たった時の判定(敵キャラ側)

スクリーンショット 2016-02-04 11.40.00
敵キャラに弾丸が当たった時の判定(弾丸側)

これでほぼシューティングゲームになってますね。
普通に組んでいくと当たり判定のところで片方(弾丸、もしくは敵キャラ)しか消えないという事態が起こります。
それを回避するためにマルチスレッドプログラミングという同時にスクリプトを実行するプログラムを組み立てました。(メッセージを送ったり受け取ったりしている部分)

【4週目】BGMの追加・関数

4週目からは、よりゲームを面白くするためのスクリプトを追加していきます。

フリー素材やすでにスクラッチで用意されている素材を用いてBGMや効果音を追加。
自分で音を作って、スタート音も作りました。

スクリーンショット 2016-02-04 11.56.38

さらに敵キャラに爆破のアニメーションを追加しました。
画像に効果を加えてあげることで簡単にアニメーションが完成します。

スクリーンショット 2016-02-04 11.58.05

さらにさらに、重複しているスクリプトは自分で新しいブロックを作って定義することができます。

スクリーンショット 2016-02-04 11.58.58
関数の定義と同じですよね。

そして、できたものがこちら。
これ以上何を加えるの?ってくらいの完成度ですよね。
まあ、これからスコアとか残機数とかボスキャラとか色々できるんですけどそれは2ヶ月目の授業になります。

以上がプログラミング教室そらでの1ヶ月目の授業概要となります。

プログラミングを学びたい人はどんな方でも大募集中ですのでお気軽にお問い合わせください。

プログラミング教室の詳細ページはこちらをクリック