和田憲幸のブログ

札幌市白石区在住、個人事業のWebエンジニア 和田憲幸(45歳)のブログです。

レゴとプログラミング

ダメになりそうなときはレゴがやっぱり一番大事ですよね。

2010-10-19 04:47:08
入力時間 / 14:54

人間は2種類に分けられる。レゴで遊んだ人とそうでない人だ!と、痛いまでに偏見丸出しな意見を述べさせていただこう。お子さんがいらっしゃる方は必見!レゴ(ブロック)遊びって大切よって話し。

レゴブロックって結構高いんですよね。まぁ私の家は裕福だった(過去形)のでたくさん買ってもらいましたけどね。で、今になって思うんですけどロジカルな思考を育む上でレゴブロックなどのブロック遊びってやっぱり大切だと思うんです。以下、私がレゴを推す根拠です。

制約が多い

まず制約が多いこと。あらかじめ決められたブロックの形状を組み合わせる。これは非常にプログラムとよく似ている。プログラムも言語によって制約がとても多い。工夫することでその制約を越える何かを表現するって事はプログラムもレゴブロックも何一つ変わらない。

凡例はあっても明確な結論はない

答えが無い。パッケージで買ったときに凡例は提示されるがそれが答えというわけではなくあくまで一例に過ぎないという事。プログラムも答えは基本的ないし、目的とする形状は創作者へ完全に委ねられており、そこへたどり着くための道筋も無限大である。

目的は頭の中に

レゴを組み立てる時、まず頭にその形状をイメージする。そしてその目的に形状を実現するためにどういう組み合わせ・工程でそこへ辿り着くべきかを考える。これもプログラムにあまりに酷似している。要件定義(形状をイメージする)→設計(工程・手順)→開発(組み立て)がある。それを子どもの頃に頭の中だけで勝手にやっている。スゲェぞレゴ。

ある意味ではオブジェクト指向

一度つくった組み合わせをしっかりと覚えると、次つくるときはその組み合わせを踏まえた上で組み合わせと組み合わせのコンビネーションができる。そうすることで非常に効率的に組み合わせ自体をモジュール化できる。まさにオブジェクト指向である。

と、いうことでレゴはとても素晴らしいプログラマ育成ツールである事に疑いの余地は無いだろう。たぶん私の独りよがりの憶測で申し訳ないがプログラマにはレゴ好きが多いんじゃないかなって。我が子をプログラマに育てたい人やロジカルで理屈っぽい子に育てたい人はぜひレゴを買い与えてみてはどうだろうか。

P.684