Scratchとは
Scratch (スクラッチ) とは、MIT (マサチューセッツ工科大学) メディアラボのライフロング・キンダーガーデンという研究チームが小中学生向けの教育ツールとして開発したビジュアルプログラミング言語です。
プログラミングというとコードを書かなくてはならず、難しいイメージがありますが、Scratch ではブロックをつなげていくだけでプログラミングができます。
ブロックの組み合わせによって自由自在にアニメーションやゲーム、システムなどを作成でき、もしプログラムがうまく作動しない場合でも、ブロックの組み換えも容易にできるのでプログラムの修正も簡単に行えます。
また、Scratch にはオンラインコミュニティがあり、これに参加すれば、自分の作った作品を世界に公開することもできます。
Scratchでできること
Scratch では、ブロックの組み合わせ次第で、アニメーションやゲームが作成できます。スプライトと呼ばれるキャラクターや道具を選択し、命令を出すことでそのキャラクターを動かしたり、しゃべらせたりといったことができます。ほかにも、キャラクターにジャンプをさせたり、走らせたりと、自由自在です。また、自分でキャラクターや背景をデザインすることもできるため、イメージしたものを再現しやすいでしょう。また、高度で複雑なものも作れるなど、ブロックの組み合わせによって自由な作品作りが可能です。
プログラミング学習に最適なScratch
2020 年度、小学校における学習指導要領の改正が行われました。ここで大きく話題に上がったのがプログラミング学習の必修化です。この改変の目的は IT 人材の充足です。この背景には IT 人材の不足があります。そして、このIT人材には「プログラミング的思考」が必須です。このプログラミング的思考とは「ゴールに到達するまでの動きを細かく分解し、効率的に動くルートを考え、試行錯誤しながら最適なルートを導き出す思考」のことです。プログラミング学習を通じて身につけることができます。これは物事を細分化して効率的に考えたり、効果的に相手に伝えたり、課題を見つけて解決するといった力は他分野でも役に立ちます。
そういった背景があるなかで、Scratch はプログラミングを感覚的に行なうことができる、つまり、プログラミング思考をわかりやすく学んで、楽しみながら身につけるのに最適な教材なのです。
Scratchの特徴と人気の理由
Scratch は多くの教育現場で教材として使われているなど、ビジュアルプログラミング言語のなかでも高い地位を占めています。なぜこれほど多くの人に利用されるのか、その人気の理由を Scratch の特徴から紐解いていきます。
カラフルなブロックで感覚的に操作できる
Scratch では動き、見た目、音といった機能ごとに 8 色に色分けされたブロックがコードの役目をしています。ブロックには「10 歩動かす」というようにわかりやすく命令が書かれており、ブロックをマウスでドラッグアンドドロップしてつなげていくといったように感覚的に操作できます。機能もひと目でわかり、ブロックをつなげるだけでプログラムが作れて、プログラムの動作を見ながら進められるので理解しやすいです。そのため、コーディングが苦手な人や英語がわからない子どもでもプログラミングの楽しさに触れることができます。このように、ブロック遊びの感覚で視覚的にプログラミングが学べるのが人気の理由となっています。
Scratch のように文字列ではなく、視覚的に捉えられるものを組み合わせてプログラムを作る言語のことをビジュアルプログラミング言語といい、Scratch のブロック形式のビジュアルプログラミング方式は、後発の多くのプログラミングツールの手本のようになっています。
言語自体の知識が要らない
コードを用いるプログラミング言語では、「文法」や「階層」を意識しなくてはなりません。
命令の大小を意識した構造のプログラムをつくるにはどうしてもプログラミングの知識や言語自体の知識が必要になってきます。しかし、プログラミングをはじめて学ぶ子どもにとっては「難しそう」と苦手意識を持たせてしまいかねません。その点、Scratch では難しい概念を意識せずともブロックをつなげて視覚的に階層を捉えることができます。
修正が簡単
プログラミングの工程で精神的にも体力的にもきついとされる作業はプログラムの修正です。プログラムが思うように動作しないときに、一行一行チェックして間違った箇所を見つけて修正する作業です。一般的なプログラミング言語では、1 つの間違いを見つけるまで英語の羅列と格闘することになり、骨が折れます。しかし、Scratch であれば、思うように動かなかったプログラムを別のブロックに替えて試したり、微調整をするといったことが簡単にできます。
導入しやすい
利用する際にインストールをする必要がなく、ブラウザ上で動くのも Scratch の魅力の一つです。「Scratch」と検索し、公式サイトにアクセスするだけでよく、バージョンに関しても常に最新の状態になっているので、バージョンアップなどの作業も省けます。
◆Scratch公式サイト
https://scratch.mit.edu/
※ネット環境がない場所で利用する場合は、ダウンロードしておくことも可能です。
ほかにも、5 歳~7 歳向けに開発された簡易版「ScrathJr」もあります。
無料で使える
Scratch 自体がオープンソースであり、ソフトウェア自体は無料であるため、PC と Web環境さえあれば利用できます。Scratch の開発費と維持費は助成金と寄付金で賄われているので、誰でも完全無料で使えるのです。後ほど説明しますが、自分が作った作品を公開する環境や学習コンテンツなども無料で数多く提供されています。また、Scratch 自体がオープンソースなので、Scratch をベースにアレンジを加えて提供されているアプリも多くあります。
日本語で学べる
一般的なプログラム言語は、英語の構文や関数を使ってコードを記述しますが、Scratchは 70 以上の言語で利用できることから、現在では 200 ヶ国以上の国と地域で利用されています。
また、子どもたちが簡単に楽しみながら学べることを最優先に開発された言語であるため、ひらがなも選択できるようになっています。
活発なコミュニティ
Scratch は ID を作らなくても利用できますがIDを登録すると、自身の作品をクラウドに保存したり、世界中に公開するといったこともできます。この公開機能は「リミックスツリー」といって、公開された作品は、ほかのユーザがプログラムを閲覧・改編することができるというものです。世界中の多くの人に利用される Scratch ですが、Scratch 自体がオープンソースであるため、ユーザ同士で英知を共有し、発展させていくといった交流が盛んに行われています。
Scratchを学ぶうえでの注意点
プログラミング言語を学べるわけではない
Scratch はブロックを組み合わせてプログラムを作成するビジュアルプログラミング言語です。プログラミングの仕組みは学べますが、実際にエンジニアが扱うような C言語や JavaScript といった文字列でコードを記述するテキストプログラミング言語の知識が得られるわけではありません。言語を身につけたい場合は別のツールを利用しましょう。
ただ、プログラミングの基礎的な考え方を学ぶことはできるので、Scratch をまず学んでおくことでほかの言語を学ぶハードルがぐんと下がるでしょう。
まとめ
Scratch のなによりの強みはやはり「プログラムが動く経験」を簡単に得られることでしょう。ブロックを1つ置くだけでキャラクターが 10 歩進むといった表現ができます。自分の描いたイラストにインタラクティブな動きをつけられることに楽しさを見出す、こういった成功体験を気軽に得られるのが多くの子どもたちに支持される理由です。
楽しみながら、アイデアを形にする力や創造力、物事を順序立てて考える力、課題解決能力・論理的思考力を身につけられる Scratch をぜひ活用しましょう!