見出し画像

プログラミングの基本を小学生に伝えるために考えたことを大人の方にも伝えます

 2020年の正月の期間、小学生の親子さん向けにプログラミングの基本構文を学ぶための教材を作っていました。せっかくなので、大人の方々にも、プログラミングを学ぶということ、プログラミングの基本とはどういうものなのかを伝えてみようと思います。

プログラミングってなに?

コンピュータに何かさせるには、一つ一つの命令が必要です。このような命令を意味のある単位でまとめたものプログラムと呼びます。そしてプログラムを作ることをプログラミングと呼びます。

プログラミングはコンピューターの中で何かを作るための方法なのですが、プログラミングだけでは何も作れません。大工さんでいう、金槌だったり、釘だったりがプログラミングだからです。家を作りたい、船を作りたい、作りたいものがあって、初めてプログラミングで作ることができます。

言い換えると、プログラミングでなにかを作るということは常に、

「プログラミング」 x 「何か」

です。例えば、銀行のATMのソフトウェアを作ろうとします。そうすると、「プログラミング」x「銀行のお仕事の理解」x「ATMの機械と連携するための知識」のように、「何か」も理解する必要があります。

「プログラミング」とはコンピュータの中での「何か」を実現するためのツールなのです。

プログラミングを学ぶということ

「プログラミング」を学ぶということは、関連する色々なことも学ぶ必要があります。

ウェブサイトを作ろうとすると、「ブラウザーに表示する仕組みであるHTML、CSS」、「ウェブサーバーの仕組み」、「サーバの用意・設定」、「作るウェブサイトの内容」、「データーベースの使い方」等、プログラミングではないことも、一緒に学ぶ必要があります。

「プログラミング」を学ぶということは「関連する何か」も学ぶ必要があるということです。

プログラミングを学ぶことについて、人によって言うことが違っていたりしませんか? 「プログラミングは簡単だよー」だったり、「難しいからすぐにできないよー」だったり。これは、両方とも正解なんです。なぜなら、「何か」もふくめてプログラミングの話をしていて「何か」は作るものによって変わります。

では「何か」を抜いて、「純粋なプログラミング」を学ぶ方法はどうするのがいいのでしょうか? 

純粋なプログラミングの学び方

純粋なプログラミングを学ぶ最初の一歩としては、プログラミングの基礎を理解する必要があります。算数でいう数を数えたり、足し算だったり、引き算んです。

プログラミングの基礎は「基本構文の理解」「プログラムの整理整頓」の仕方です。この2つを理解して身につければ、後は経験を積むだけです。逆に言うと、この部分をサボってしまうと、プログラミングがなかなか身につかなくなってしまいます。

といっても、そんな大変なことではなく単純なことで、小学生でもサポートさえあれば学ぶことはできます。「基本構文の理解」と「プログラムの整理整頓」について、簡単に記載しますね。

小学生向けの教材には、今回グーグルが開発したGo言語というのを利用していますが、他のプログラミング言語でも考え方は同じです。

1) 基本構文の理解

プログラミングの基本構文は少ないです。プログラミングは複雑ですが、基本はとってもシンプルです。人によって基本とするものは異なるかもしれませんが、4つあると思っています。

1. 変数

プログラム上のデータを保存しておく場所を変数といいます。変数の操作(作成、編集、削除、取得)ができるようになれば初級としては十分です。(変数の子供向け教材はこちら)

2. 条件文

プログラムに決断させるための条件を指定する方法です。「もし〜ならば〜をする」というような処理をプログラムで記載します。例えば「100点をとったら花火を打ち上げる」とかですね。(条件文の子供向け教材はこちら

3. 繰り返し文

同じことを指定した回数繰り返させるプログラムを作ることができます。(繰り返し文の子供向け教材はこちら

4. ブロック

プログラミングのソースには、いたるところに、始まりと終わりがあります。例えば、 { } こういうので囲まれていたり、() こういうので囲まれていたり、色々です。その中身がブロックです。ブロックは箱のようなイメージです。箱が沢山あって、その中にプログラムが入っています。箱の中に、箱がはいってたりもします。

ブロックに関しての勉強は、大人の方には簡単すぎて必要ないかもしれませんが、子どもたちが、プログラムが動かない原因をみつけるために、ブロックという考え方の理解が必要になります。ブロックを認識していないと、閉じ忘れたりしたのを、気づけないのですよね。(ブロックの子供向け教材はこちら

変数、条件文、繰り返し文、ブロックの4つを理解し使えるようになれば、プログラミングの基本操作に関してはすでにマスターしたことになります。マスターといっても、素振りを開始できる状態になった、、、という話です。1+1が2とわかれば足し算ができたと言っていいのと同じ感覚です。基本を繰り返し使って身につけていく必要があります。

2)プログラムの整理整頓

プログラミングは、人間がコンピュータとやりとりをするために、人間向けに作られています。

人間にとって時間や記憶力は有限です。それを考慮したのがプログラミング言語です。プログラミング言語は、人に使いやすいようにできています。

人にとって使いやすいというのは、きちんと片付けれるということです。人間はコンピュータと違い、1万個の中から1つの何かを瞬時に見つけることはできません。しっかり片付けておいて、何がどこにあるかを、見つけれるようにしておく必要があります。

考えてみてください。1万行の整理整頓がされていないソースコードがあります。プログラムに電気がつかない不具合があっても、見つけるの大変そうじゃないですか?きちんと整理されていて、電気をつけるプログラムは、この箱に入ってるとわかれば、、、不具合も見つけやすそうですよね。

初心者の方や、不具合をよく作る方は、整理整頓という視野が狭いことが多いです。逆に、すごいと言われるプログラマーは、プログラムを整理整頓する技術が優れてるケースが多いです。

ではどのように、プログラムを整理整頓するのでしょうか?整理をする対象として、ソースコードの整理変数の整理の2つがあります。簡単に説明してみます。

ソースコードの整理をする3つの方法

ソースコードを整理すると人間が利用しやすくなります。

1)パッケージ

ソースコード群を、役割でまとめるための整理方法です。一番大雑把にまとめれます。言語によってはネームスペースといったりします。

2)クラス

クラスは、変数と関数をまとめて整理する方法です。自分の好きな単位でまとめれます。たとえば、ユーザ情報と操作を取り扱うクラスを作ってみたりです。

(クラスの子供向け教材はこちら)

3)関数

関数は、ソースコードの塊を、機能毎に整理できます。

(関数の子供向け教材はこちら)

変数の整理をする2つの方法

1)アレイ(配列型)

1つの変数にデータをリストとして整理できます。

配列の子供向け教材はこちら)

2)ハッシュ(辞書型)

1つの変数にデータをキー毎に整理できます。

(ハッシュの子供向け教材はこちら)

プログラムの整理整頓を意識するのはとても大切です。この考え方を持っていれば、人間が扱いやすいプログラムになるように心がけてプログラムを作っていけます。逆に、この考えがないと片付けが下手なので、周りの人から、なかなか上達しないと思われるかもしれませんね。

プログラミングの学びのおさらい

基本構文とプログラムの整理整頓の仕方がわかれば、純粋なプログラミングを学ぶ部分の最初の1歩としては十分です。

次は、小さい「何か」や、興味がある「何か」と組み合わせて学んでいくことをおすすめします。

小、中学生のお子さんがいらっしゃる方は、お子さんと一緒にプログラミングを学んでみてください。やってみると、楽しくなると思いますよ。遊び感覚で学べる教材を紹介しておきますね。

Golangでプログラミングの基本構文を学ぼう

画像1

また、大人の方でも、プログラミングが難しいと感じてる方がいらっしゃれば、教材で遊んでみてはどうでしょうか?

最後に

色々な人が、色々なプログラムを作って世界を便利にしたり、みんなで遊べるようになると楽しそうですね。

この記事が気に入ったらサポートをしてみませんか?