« ゲームの開発をお手軽に | メイン | SOAP is DEAD »

プログラムの美しさ

304 Not Modified: プログラマの美意識
404 Blog Not Found:美しいプログラムの美しくないソース

「美しい」という価値基準は、時代や場所、組織、ひとそれぞれで異なるものです。流行もあるので、昨年「美しい」とされていたものが、今年になると「美しくない」と評価されることもあるでしょう。

システム開発に従事している仲間で話をしていると、ときおり「プログラム(ソースコード)の美しさ」についての話題になることがあります。

その中で、「あそこの協力会社は良いものを作ってくる」とか「あの会社のソースは汚い」とか、そういった会話が出てきます。

ここで気を付けなければいけないのは、ここで会話をしている人それぞれがそれぞれの「美しさ」の価値基準を持っているということ。

あるプログラマは、「コードは短ければ短いほど良い」と考え、あるプログラマは、「コードは共通化されていればされているほど良い」と考え、あるプログラマは、「コードは読みやすければ読みやすいほど良い」と考え、あるプログラマは、「不具合が少なければ少ないほど良い」と考えていたりするわけです。

そういう場での会話では、それぞれがどういう価値基準を持っているかを確認することなく、会話が進み終わってしまうことがよくあります。

多種多様な言語が活躍し、コードを書くプログラマの数も膨大になった今、一つの美意識に固執し、「自分以外みんなダメ」的な発想に陥ってしまうのは非常に危険です。そのプログラマ自身の成長も止まってしまうし、そのプログラマの下についた若手のプログラマにとっても変な価値観を植え付けてしまうことになります。

「美しい」という言葉を使うとき、プログラマ(エンジニア)は自分が思う「美しさ」を説明できなければいけないと思います。

僕自身も、他人の作ったプログラムを評するときに「美しい」「美しくない」という言葉を使ってしまうことがあるので、まなめさんのように自分の考える「美しいプログラム」とはどんなプログラムなのかをよく考えてみることにします。