皆さんこんにちは!
志學舎プログラミング担当阿部です。
今回も若葉台教室にて実施した通常授業の様子をお届けします!
6月のプレミドルのゲームはハッピータートルでした。
ハッピータートルは、タートル(亀)を操作して障害物(パイプ)を避けるゲームです。
タートルは一定の速さで落下するので、「上」キーでタートルを上昇させ、パイプに当たらないよう操作します。パイプに当たるとゲームオーバーとなり、得点が表示されます。パイプを通過するたびにスコアが加算され、スコアが上がるとレベルとパイプの移動速度が上がります。
最初にハッピータートルで実際に遊びました。その後、Pythonで先ほど遊んだハッピータートルを製作しました。正面からの顔写真や音声は載せられませんが、真剣に取り組んでおり、すごく楽しそうな様子でした!
プログラミングの難しい点の1つに、結果論で作成するとプログラムの中身の理解が出来なくなることが挙げられます。
「ネットにあるコードをコピペしたら上手く動いた」「よくわからなかったけど数字変えたら上手くいった」みたいに、出力だけを見て作成や修正を行うと、そのプログラムがどう動いているのか、その内部の仕組みや構造を理解できなくなります。これではプログラミングを習得したことにはなりません...
ただ、プログラムのコードを1つ1つ説明するのは非常に難しい!今回のハッピータートルを例に紹介します。
1枚目の写真は、タートル(亀)と障害物(パイプ)との当たり判定をしている箇所のソースコードです。これを口頭で説明するのは至難の技...
そこで私は、書かれている数字を極端なものに書き換えたり、あえてわからない箇所のコードを消したりした後に、プログラムを実行してみることを通じて、生徒に体験的に理解させるようにしています
例えば、2枚目の写真のように青線の箇所を少しだけ変更させると...
3枚目の写真の様に、タートル(亀)が、下の障害物(パイプ)に潜り込んでしまいました!つまり、青線の箇所は、下のパイプとタートル(亀)の高さに関する当たり判定をしていたことがわかります。
このように、理解できないコードに出会った際には実際に手を動かして、数値を変えたり、あえてそのコードを消したりさせることによって、そのコードが何に使われるのか、なぜ必要か、さらには改良する際にどの点を気を付けるべきかを気づかせることが出来ます。それを地道に繰り返すことでプログラムの中身の理解に繋がると考えています。
その後も順調に進んでいき、全生徒が見事、ハッピータートルを完成させました!素晴らしい✨
今後も授業の様子をお届けできたらなと思います。よろしくお願いいたします。
#プログラミング#体験 #無料体験 #説明会 #若葉台 #稲城市 #プログラミング教室 #scratch #Python#CSS#Javascript#HTML#プログラミングのコツ#若葉台 プログラミング教室#Python 教室#Web開発 教室#Web 教室#ゲームプログラミング#ゲームプログラミング 教室