みなさんこんにちは!
玖VRCreateSchoolの山谷です^^
今回は、プログラミングを学ぶ教材として使っているScratch(スクラッチ)について詳しく解説していきます。
日商のプログラミング検定に使用されていたり、学校のプログラミング教育にも使用されていたりと、近年ますます注目を集めているこのスクラッチ。
実はご家庭でプログラミング学習を始めるのにも最適なソフトなので、「この記事さえ見ればプログラミング教育の第一歩を踏み出せる!」というところまで、詳しく解説していきますね!
それでは、いってみましょーーーー!!!
スクラッチとは、アメリカのマサチューセッツ工科大学メディアラボで開発された、ビジュアルプログラミング言語です。
その最大の特徴は、「ブロックを組み合わせてプログラムを創る」こと。
スクラッチが用意しているカラフルなブロックを組み合わせながら、ゲーム、アニメ、音楽、果てはプレゼンテーションまで、それぞれの創造力のおもむくままに創作することができます。
インターネット上で無料で公開されているので、誰でも気軽に使えるということも大きな魅力の一つですね^^
①初めてでもわかりやすい
スクラッチは様々な機能を持ったブロックがカラフルに色分けされていて、難しい知識がなくてもプログラムを組んでいくことができます。
実際に小学校低学年の子にもスクラッチを使ったプログラミングの授業をしていますが、すぐに使い方を把握して思い思いのゲームを作っていました^^
②世界中の人が作った作品を体験できる
スクラッチには、自分が作った作品を世界に公開する機能があります。
「どのようなプログラムでできているか」を見ることもできるので、「こんなふうにプログラムすれば良いのか!」と、作品を楽しみながら学ぶことができます。
マリオなどのかなり複雑な作りのゲームもあるので、これが本当に勉強になりますね!
③プログラミングの考え方を学べる
スクラッチは性質上、文字でコードを書いてプログラミングをするわけではありません。
それでも目で見て直感的に理解しやすいので、プログラミングの入り口として、「プログラミング的な考え方」を身につけるにはピッタリのソフトなのは間違いありません。
①論理的思考力
プログラミングは、「つなぐ力」である論理的思考力を養うことができます。
例えば、「ゲームに登場するキャラクターが狙ったタイミングで思った通りの動きをするには何をどの順序でプログラムすれば良いか」など、一つ一つの手順を正確かつ具体的に順序立てて考える必要があります。
また、プログラムは答えが一つではありません。
実際に社会に出たときに必要となる、「答えのない問題を論理的に考えて解決する力」を養うにも、良い教材となりますね。
②発想力
作品作りを通して、「思考力のベース」である「発想力」を養うことができます。
そもそも何をテーマにした作品にするか?
テーマと関係のあるモノ・コトは何か?
より面白い作品にするために必要なことは何か?
など、作品作りでは考えることがたくさん。
アイデアを自由に出しながら、発想のセンスを磨いていきましょう!
③表現力
作品をより魅力的にしていくためには、「発想したことを形にする力」である「表現力」が必要です。
それぞれの場面に適した音は何か?
配色はどのようにすれば良いか?
違和感を覚えない「間」はどのくらいか?
など、「どう表現するか」で印象が180度変わるため、真剣に作品作りに取り組めば、自然と細やかな表現力が磨かれていきます。
④分析力
プログラミングをする上で、「分けて考える力」である「分析力」がとても重要です。
例えば「スーパーマリオ」を例に挙げると、
キャラクター、アイテム、背景、音などの素材
それぞれの素材のゲーム内での働き
タイトル、メイン、ステージ選択などの各場面
セーブ機能、命の数、コインなどの各機能
など、その他にも様々な要素から成り立っています。
これら一つ一つの要素に対して、「ゲーム内での役割」「効果的な働き方」など、作品の設定や世界観を壊さないように丁寧に構成を考えていく必要があります。
また、
このように、「どれだけ細かく分けて具体的に考えられるか」が、スクラッチをすることで磨かれていきます。
⑤問題解決力
スクラッチでは、作品を完成させるために必要な「問題解決力」を養うことができます。
実際にプログラミングをしていると、プログラムのエラーが起こることも日常茶飯事。
そんなときに、「どのコードが原因でエラーが出ているのか」を、コードを一つ一つ分解して確認・修正し、エラーを解決していく必要があります。
分析力や論理的思考力とも大きく関わりがありますが、この問題解決力も、社会に出て仕事をしていくときに、とても大切な力です。
⑥算数・数学的な知識と計算力
プログラムとは、「どのような計算式で動かすか」を記述したモノです。
例えば、「キャラクターが敵を倒した後に自動で近くの安全地帯に行って体力を回復する」という機能を実現するには、「今のキャラクターの位置から安全地帯まで行くために、横に◯m,縦に△m,上に☆m移動する必要がある」ということを自分で計算してプログラムしなければなりません。
この例で関係のある数学的な知識といえば、中学校で習う「負の数」・「変数」・「関数」といった知識です。
このように、自分の思い通りにプログラムしていくためには様々な算数・数学的な知識が必要となるため、自然と数学の力が身についていくこととなります。
残念ながら、スクラッチができるようになったとしてもプログラマーになることはできません。
なぜなら、実際に現場で使っている文字の言語を書けるようにはならないからです。
スクラッチはあくまでも
プログラミングに慣れ親しむ
プログラミング的な考え方を養う
ことに適したアプリです。
ただこれまでにお伝えした通り、プログラミングを学ぶ始めの一歩としては、子供にとっても、そして大人にとっても最適なアプリです。
「プログラミングってよくわからないし、子どもに何をさせたらいいかわからないなぁ」と思われている方がいらっしゃいましたら、この機会にぜひスクラッチを体験してみてください^^
今回は、プログラミング教育の現場でとても注目されている「Scratch」について解説していきました。
将来プログラマーになるかどうかに関わらず、社会に出てから必要とされる思考力を学べる、とても良い学習アプリだと思います。
パソコンだけではなくタブレットやスマホでもできるので、興味のある方はぜひお子様と一緒に遊んでみてくださいね^^