JavaやJavaScript,PHPなど,現在人気のプログラミング言語のほとんどは「オブジェクト指向言語」という種類の言語です。ですがこのオブジェクト指向,日本人には理解しにくいと言われています。その原因は様々ですが,一番の悪者は,日本のIT教育ではないでしょうか。 変数は「箱」じゃない! 皆さんは,プログラミングの授業で「変数」について,どのように教わりましたか? おそらく,「変数とはデータを代入する“箱”のようなものです」といった説明を受けたと思います。実はこの説明,まったくの大嘘なのです。 この「変数」や「代入」という用語ですが,数学用語からそのまま転用されています。なぜなら,プログラミングでも数学でも,同じ記号を使って数式を書くからです。例えば次の数式は,「xという変数に1を代入する式」または「xという名前のついた箱に1を入れる式」だと教わります。 x = 1