日本でもプログラミング教育が2020年度より必修となりました。
といっても、具体的に「プログラミング」の教科ができるわけではなく、既存の理系(算数や理科など)の教科より徐々にプログラミング思考を取り込んでいくようです。
確かに、実際「プログラミング」と聞いても、大抵の人は良く理解できないことが多く、どこから手をつければいいのか分からないことも多いです。そして、聞き慣れない横文字に難しく考えてしまいます。現に私もエンジニアではないので、小難しく考えてしまいます。
プログラミング
コンピュータープログラミング(英語: Computer Programming)とは、ある特定のコンピューティングの結果を得ることを目的として、実行可能なコンピュータープログラムを設計・構築するプロセスのことである。プログラミングが関係するタスクの例としては、アルゴリズムの生成、アルゴリズムの正確さとリソースの消費量のプロファイリング、選択したプログラミング言語でのアルゴリズムの実装(これは一般にコーディングと呼ばれる)などがある。プログラムのソースコードは、コンピューターのCPUで直接実行される機械語ではなく、プログラマーが理解できる1つ以上のプログラミング言語で書かれる。プログラミングの目的は、あるタスク(オペレーティングシステムのように複雑な場合もある)をコンピューター上で自動化する1連の命令を見つけることで、与えられた問題を解決することである。そのため、プログラミングのプロセスには、アプリケーションドメインに関する知識、特定のアルゴリズム、形式論理など、さまざまな主題に関する専門性が要求されることが多い。
と、「アルゴニズム」から内容が入ってこない現象に襲われますが…
『プログラミング』と『アルゴリズム』とは何ぞや。
簡単にまとめれば、「プログラミング」は、物事を行う上で、目的を達成するための順序を書き出し実行していくこと。「アルゴリズム」はその具体的な手順の部分を指す。フローチャートなどの図式化していくこと。
例えば、自分が家のリビングのソファに座っていて、トイレに行くまでのことを考えてみます。
- まず、ソファから立ち上がり
- 次に、数十歩、歩いて
- リビングの出口まで行き
- リビングのドアを握り
- ドアを開けて
- 廊下を歩き
- トイレの前でトイレの電気をつけて
- トイレのドアを開ける。
- そして、トイレに入る。
のように。
普段、考えずに無意識に行っていることもプログラミング思考で見ると、(別のご家庭では、プロセスも変わると思いますが)「トイレに行く」まで、9つのプロセスを踏んでいます。
このように、ロジカルに考えて、一つ一つを明確にして物事を行うことなのです。
ゲームは、プログラミング要素がいっぱい!
子どもの好きなデジタルゲームもプログラミングの要素そのものです。
ロールプレイングゲーム(R P G)はその代表的なジャンルだと思います。会話形式で物事を選択していき、主人公がある物事を達成する。他にもシュミレーションゲームなど。
日本は、その分野ではとても長けており、海外でも日本のゲームはより多く販売されています。
では、どのように、幼児や小学生の子どもに「プログラミング」を理解させるか。
親子で理解!「プログラミングの基礎知識」絵本
母親としては、実践型の“ゲーム機”からプログラミングを学ぶのではなくて、「本」から理解して欲しい!
まず、この発想が「プログラミング」思考への拍車にブレーキをかけているというのは、重々承知なのですが…出来れば、まず「プログラミング」の基礎を理解してから「プログラミング」を学ぶゲームへと進んで欲しい。
Eテレ「ピタゴラスイッチ」もまさにプログラミング思考!
その「ピタゴラスイッチ」監修の佐藤雅彦さん、こちらもNHK for School「考えるカラス」の石澤太祥さん、貝塚智子さん著書の「プログラムすごろく アベベのぼうけん」上下巻は、楽しくプログラミング的思考を学べます。
ゴールまで辿り着くのに、時間がかかるけど
主人公が冒険に出るストーリーは、準備から自宅であるお城を出て、バスに乗るまでも時間がかかる!ただ、その間、全てアルゴリズムの形式理論で考えて進んでいきます。
その形式理論は、難しいものではなく「池の中の魚の数」進め。など小学生が楽しめる内容。
手順となる要素を、一つ一つこなして進んでいくことで
“プログラミング思考”を理解し始める。
最初は、読むのに慣れなくゴールまで長い道のりですが、読んで主人公が進んでいくうちに、子どもの自ら理論を理解し順序よく読み進めるようになる。
小学生対象ですが、就学前のお子さんでも親子で楽しめる内容です。
ぜひ、“プログラミングのはじめの一歩“の一冊(正確には2冊)におすすめです。