未来を創る「子どもとプログラミング教育」

技術・家庭科で「Python」を ミクシィが中学校で「プログラミング授業」を実施(後編)(2/3 ページ)

» 2021年12月09日 12時00分 公開
[石井英男ITmedia]

「ソフトウェアのアイデア」を考える課題が出された最終回

最終授業 最後の授業に臨む田那辺氏

 9月29日、4回に渡るPythonの授業もいよいよ最終回となった。

 授業の冒頭では、前回生徒たちが取り組んだコードパズルの「解き方」の例が披露された。基本方針として、田那辺氏は「まずお題に出てくる変数名と関数名に注目して、次にお題が求めている条件をコードにしていけばよい」と説明した。

 リストの中から偶数だけを抜き出すお題は「『2で割った余りがゼロとなるの数が偶数』という考え方を利用すればいい」と解説した。さらにオラゴンを移動させる「課題解決」についても、まず「パターン」を見つけて、その繰り返しを「コード」にしていけば、効率的なプログラミングができると説明を加えた。

生徒の様子 最終回ということもあってか、生徒もこれまでにも増して真剣に授業に取り組んでいた
コードパズル 前回の授業で扱ったコードパズルの解き方の解説
コードパズル まず、お題に出ている変数名と関数名に注目すると答えを導きやすい
コードパズル 解答のコード
リスト 「リストから偶数をあげる」問題の解説。一般的に、プログラムで「奇数」「偶数」を判定する場合は2で割った場合に“余り”があるかどうかで判定するのが基本だ
キャラクター移動 「キャラクター移動4」の解説。まずパターンを見つけることが大切だという。この例だと、右に90度曲がるたびに歩数が2歩ずつ減るので、それを繰り返していけばゴールにたどり着ける

 次に「フロー駆動プログラミング」と「イベント駆動プログラミング」の違いについての解説された。ボタンを押したら何かが起こるというのは、後者のイベント駆動プログラミングであると実例が示された。

 授業の締めくくりには、「ソフトウェア開発アイディアシート」が配布された。誰かの役に立つソフトウェアのアイデアを考えるという課題が出され、生徒たちは一生懸命考えていたが、すぐにアイディアを思いつかない生徒の方が多かったため、次回の授業までの宿題となった。

 これで4回に渡る授業は終了した。授業時間が1回当たり50分しかないこともあり、授業の途中で“駆け足”になる所もあった。それでも、この授業を通して、生徒たちは普段使っているPCやスマートフォンの“裏側”で動いているプログラムの仕組みをある程度理解できたようで、満足した表情を浮かべていた。

フローとイベント 「フロー駆動プログラミング」と「イベント駆動プログラミング」の違いについて解説
ソフトウェア開発アイディアシート 授業の最後に配布された「ソフトウェア開発アイディアシート」。誰かの役に立つソフトウェアのアイデアを考えるという課題が出された
生徒たちの様子 生徒たちは一生懸命、人の役に立つソフトウェアのアイデアを考えていた

Copyright © ITmedia, Inc. All Rights Reserved.

最新トピックスPR

過去記事カレンダー