プログラミングは本当に難しいのか?~料理に例えて思って見れば簡単なプログラミング


プログラミングは難しい?とんでもない

プログラミングの話をする前に、まず、卵焼き作りをする時に卵焼きのレシピを見てましょう。

  • 卵ー4個
  • ラカントー5T
  • ミリンー1T
  • 醤油ー1/2t
  • サラダ油ー3T

料理をしない人でも、これはレシピだという事がわかると思います。しかし、料理を全然知らない人は「Tやtは何を意味するんだ?」や「ラカントって何の食べ物何だろう?」などの疑問をもつはずです。次はあるプログラミングのレシピを見ましょう

#include <stdio.h>
int main(int argc, char *args[]) {
printf("Hello, world.\n");
return 0;
}

上記に表示されたのはC言語で書いたコンソール画面に「Hello World!」と表示させるためのプログラミングのレシピです。プログラマーや開発者は、このレシピプログラミングソースソースコードなどとよんでます。

プログラミングの特徴

まずは、料理レシピの特徴から見てみましょう。

  • 単語略語記号といった語彙がきまっている。よくわかるものもあれば、よくわからない謎にかんじるものもある。
  • 何をどこで言うかについてのきまりである構文規則がある
  • 実行すべきことが順に並べられている。
  • たとえば鮭の裏表を焼く作業のように、時に同じ作業の繰り返し(ループ)がある
  • ときどき、なんらかの作業の参照が含まれる(コンピュータの用語では関数(function)と呼ばれる)
  • 内容についてある程度の知識があることを前提としている。例えば、ゆで卵のレシピだと「水とは何」や「水を沸かすにはどうすればいいか」などは前提となっている。
  • 期待される結果がある。例えば、料理のレシピだと「おいしい料理を完成する」と言う結果を期待する

今挙げた特徴は、驚くことに、すべてコンピュータプログラムにも当てはまります。このようにパンのレシピを持ち出したのは、プログラミングはそこまで神秘的だったり、専門的ではないということを示すためです。普通の人は「ただ難しいそう」、「良くわからない」、「難し語彙が多すぎる」などの理由で「プログラミングは難しい」思いがちです。しかし、プログラミングは料理のレシピやニットパターンのように、「正しい言葉」と「規則」を学ぶだけです。

それでも、まだプログラミングが怖い人へ

どの様な人も料理を始めた途端から「黒トリュフを使ったパスタ料理のレシピ」とか差し出されたら、上記のように「難しそう」、「良くわからない」などの理由で「料理を趣味にするのは難しい」と思うはずです。なのでほとんどの人は「目玉焼き」や「みそ汁」のように簡単に作れる家庭食から始まると思います。
なのでプログラミングも最初から「3Dワールドを走りまわるかっこいいゲーム」や「人工知能を使った画像認識」のソースを作ろうとすると難しくて作れません。。先ず、簡単に画面に「文字を表示させる」や「入力した文字を表示させる」というところから始めたほうが「面白い」し「プログラミングに馴染んで行く」のに良いと思います。

やろうとすれば出来るあなたへ最後の一言

プログラミングは難しいものではありません。馴染まれてないだけです。あなたも馴染めばきっとたのしくなると思います。

引用:ゲーム好きエンジニア柴犬のブログ

プログラミングは難しいのか?