こーいちぶろぐ

30代会社員。学びの共有の場として。

プログラムとはなんなのか

小学校でプログラミングが必修となる。

そんな話を聞いた時、すごい時代になったなあと他人事として捉えていた。

プログラマーとかエンジニアとか…

売り出されているようなすごいゲームを作ったり、ロボットを作ったり、テレビでよく見る010101011みたいな画面をみたり、打ったり、それこそハッカーみたいなことができる人の事だと思っていた。

自分では手の届かない事をする人達のことだと思っていた。

 

そんな中、仕事でふとしたきっかけでプログラミングに触れる機会があった。

ちょっと勉強してみただけで、パソコン上に文字が映し出されたりして、できるようになりたいと思った。

いろいろなサイトをみて、実際にコードをかいてみる。

楽しい。

 

でも、出てくるのはどんなプログラミング言語勉強サイトをみても書き方とか、関数とかで…

で、プログラミングってなんなの?で、何ができるの?どの言語を勉強すればいいの?ってなった。

 

いろいろ調べる中でちょっと見えたことがあるので、残しておきます。

 

○プログラミングとは何か

・コンピューターに指示を出すこと

・コンピューターにやって欲しいことに向けた道順を教えてあげること

・コンピューターのtodoリストを作ること

 

こんな感じだと思う。

大きな話ではなく、今打っているキーボードもプログラムが入っていなければただのボタン。

キーボードが押されたら

→どのボタンが押されたかをコンピューターが認識して

→そのボタンは何の文字かを確かめて

→画面のどの場所に入れるかを確認して→表示する

 

本当は違うのかもしれないけど、こーゆー内容を指示するのがプログラミングだと思う。

 

しかも相手が人間なら、「そこ」押したら「あれ」出しておいて!で伝わるかもしれないけれど、コンピューターは良くも悪くも融通が効かない。

だから駅までにどうやって行くの?って聞かれた時も、人間なら

次の交差点を右に行って、その道沿いに真っ直ぐ進めば着くよ

でいいかもしれないけど

コンピューターだと

真っ直ぐ50m進んで、体の向きを右に向けて、今度は真っ直ぐ50m進んで、道がちょっと曲がっているから30°体の向きを左に向けて・・・

みたいなことまでいってあげないとわからない。

もっと言うと右の足を上げて・・・からかもしれない。

 

それを一つ一つ、コンピューターが理解できる言葉で教えてあげるのがプログラミングだと思った。

違ってたらどなたか教えてください。

www.onamae.com