「Scratchで楽しく学ぶアート&サイエンス」の第2版を読みました。Scratch3.0に対応しています
第1版を読んだ時の記事はこちらです
今回追加された6章の3D迷路、終章の拡張機能の自作方法は読み応えありです
作例を一通り作ってみました
序章 「跳ねるボール」を作りながら操作に慣れよう
Scratchの操作に慣れるための小手調べのプログラムです。跳ねる動きはいろいろ活用できますね
第1章 40人クラスで同じ誕生日の人がいる確率は?
40人の誕生日をランダムに生成して、同じ誕生日の人がいる確率を調べるプログラム。理論値を求めるプログラムも作成します
第2章 ダーツを4万本投げて円周率を求めよう
モンテカルロ法を使って円周率を求めるプログラムです
第3章 三角関数を使って万華鏡のような模様を作ろう
三角関数を利用して、直角三角形を描画するプログラムを作成して・・・
そのプログラムを利用して、万華鏡のような模様を描くプログラムを作成します
第4章 フラクタル図形を描いてみよう
再帰を使って、シェルピンスキーの三角形を描画するプログラム
コッホ曲線を描くプログラム
クローンを利用して自然界の樹のようなツリーを描画するプログラム
第5章 コンピューターのキホン、加算器を作ってみよう
加算器(2進法での足し算ができる装置)のプログラム
第6章 レイキャスティングを使って3D迷路を作ってみよう
第2版で新たに追加された章です。レイキャスティングを使って3D迷路を描画して、その迷路を自由に動き回ることができるプログラムです
画面全体に半透明で表示されているのが3D迷路を上から見た図です。この図は自分で自由に描いたもので、これを元に3D迷路を描画します
終章 Scratchを改造して独自拡張機能を作ってみよう
Scratchの拡張機能を自作する方法の紹介です。必要な環境の構築方法も掲載されています。実際に環境を構築して作ってみました
テキストをブラウザのアラートとして表示するブロック
フィズバズの判定をするブロック
Webサービスに接続して、取得したJSONデータから必要な情報を取得するブロック
感想
Scratchだと実装が簡単なので、プログラムの仕組みが理解しやすいですね。Scratchは子ども向けの本が多いですが、こういった高度な活用方法を紹介した本がもっと出版されると嬉しいです。また、Scratchの拡張機能の作り方を紹介した書籍はあまりないと思うので、興味のある人はそれだけでも読む価値ありだと思います