スクラッチの次のステップは?

スクラッチでだいたいゲームを作れるようになった!という人の次のステップは、何を学べば良いでしょうか。今日はこのことについてお話しします。

小学校3年生くらいのお子さんなら、10時間くらいで「スクラッチはだいたい分かったかな」と思ってしまうのですが、実はまだまだ先があります。

そのまま別のプログラミング言語をはじめたりすると、ギャップが大きすぎて挫折する可能性が高いです。

まずはスクラッチでしっかり基礎力をつけましょう。

素材をいじるのを止める

素材というのは、ゲームに組み込む音声やキャラクターの絵のことです。

絵や音声をいじるのは、派手で面白いのでつい熱中してしまいますよね。

しかし、これらの完成度はプログラミングとは関係が薄いのでいったん無視するこを覚えて下さい。

素材作りにこだわっていると時間がいくらあっても足りなくなります。

素材は最低限にして、プログラミング本体のほうを工夫していきましょう。

ゲームとしての完成度をあげる

では、プログラミング本体の工夫とはどのようなことでしょうか。

例えば、だいたい思った通りのゲームが作れるようになったとします。

でもそれは、以下のようなゲームかもしれません。

  • ハイスコアを競い合える仕組みが無い。
  • プレイのたびに、毎回「ストップ」ボタンと「スタート」ボタンをクリックしないといけない。
  • 遊び方を口頭で説明してもらわないと分からない

などなど….。色々とアラがあるものです。

こういったところをキチンと作るのは、意外と難しかったり手間がかかったりします。

「遊べればOK」というレベルで作っていると気がつきません。

ゲームとしての完成度を高めることに注意してプログラミングするようにしてみましょう。

新しい学びがたくさん得られるはずです。

スクリプトの完成度をあげる

次はスクリプトの完成度です。
(スクリプトというのは、プログラムの命令を表すブロックを組み合わせていく部分のことです)

思った通りのゲームが作れたとしましょう。でも、そのプログラムのスクリプトは上手に書けているでしょうか?

あまり上手ではないスクリプトの特徴を幾つか挙げます。

  • 同じ処理をあちこちに書いている。
  • 実は不要な変数が残っている。
  • スクリプトが分かりにくい。
  • ごちゃごちゃしていて機能追加するのが大変。

スクラッチはプログラミング言語としては決して高機能ではありません。

しかし、同じ事を何度も書かなくても済ませるための仕組みが幾つか備わっています。
「メッセージ」ブロック、「ブロックをつくる」、「クローンをつくる」ブロックです。

  • 「メッセージ」ブロック
    ゲームに出てくるキャラクター(スプライト)同士で「手紙」をやりとりさせるようにして、プログラムを連携させることができます。
    この「手紙」のことをスクラッチの世界では「メッセージ」といいます。
    このメッセージ機能を使うと、どんどん長くなってしまうスクリプトを、ある程度のまとまりに分けて書けるようになります。
    他のプログラミング言語では「イベント」と呼ばれる概念です。
  • 「ブロックをつくる」機能
    ある処理のまとまりを、ひとつのブロックにまとめるための機能です。
    複数のブロックを組み合わせた処理を、ひとつのブロックにまとめておくと、プログラム中の色々な場所から、その処理を1つのブロックで呼び出すことが出来ます。
    他のプログラミング言語では「メソッド」と呼ばれる概念です。
  • 「クローンをつくる」機能
    あるキャラクター(スプライト)をまるごとコピーして増やす機能です。
    敵キャラクターなどを複数表示してバラバラに動かしたい場合などに使います。
    他のプログラミング言語では、「インスタンス」と呼ばれる概念です。

これらの機能(ブロック)を使いこなせないのなら、まずはその機能を確かめるところから始めましょう。

これらの仕組みはどれも、他のプログラミング言語でもよく出てくる概念です。

スクラッチをやっている間にこういった概念をしっかりと身につけておくと、他のプログラミング言語をはじめたときにスムーズに理解することができるようになります。

そのためには、どこに何が書いてあるか分かりやすい、簡潔なスクリプトを書けるように、上記のような機能をつかって1つのスクリプトを何度も修正しましょう。

初級ではプログラミングの楽しさをお伝えすることが最重要です。
でも、その先に進みたい!という生徒さんには、このような基礎力が大切なのです。

当プログラミング教室では、こういった基礎力も重視して、しっかりと指導していきます。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

%d人のブロガーが「いいね」をつけました。