EzoGP Team Blog

Efficient for Web development recording activities.

エレガントなコードを書こう! (2009/03/26)

posted tetsuya_odaka

世界で一番有名な方程式は、「e=m*c*c」。

アインシュタインが生み出したこの方程式は、その理論(相対性理論)とともにエレガントで美しい。

時間概念の見直しを唱えたのは、アインシュタインだけではないし、相対性理論は(あえて当時というが)物理学の本流ではなかった。同じ帰結に到達している学者もいた。しかも、100年も前の話。

アインシュタインはそんなに数学が得意ではなかったのだけど、一番有名な方程式を編み出したのは彼。

それは、彼が導いた帰結がエレガントであったから。人々がそれを「美しい」と感じるから。

物理学や数学の世界では、「エレガント」という言葉がごく普通に使われる。この式はエレガントであるのか。これを導く過程はエレガントであるのか。

フェルメールの大定理が証明されけたけど、大分な論文は煩雑なものだと思う。

エレガントとは簡潔で美しく、人々の直感に訴えるものに与えられる称号である。

コードもエレガントでなければならない。なぜなら、それは人に再利用されるから。どんなに見てくれがきれいでも、そのコードがエレガントでなければ、誰も使ってくれないだろう。

変数名の与え方、インデントの仕方、関数系の並べ方、ディレクトリの切り方。

これらに細心の注意を払わなければならない。

なぜなら、こんな些細なことが、「コードがエレガントであることの必要条件」であるからだ。