多人数でシステム開発をする場合「統一性があったほうが読みやすい」なんて理由で、言語別・組織別・プロジェクト別にコーディング規約があるものだけど、そんなに乱立しているなら個人別の規約があっても何も問題はないはず。
これは詭弁だろうか? でも個人的な開発や、開発中に読むサンプルコードも含めて、自分がいくつのコーディング規約に関わっているか考えてみると、個人から見た統一性は失われているわけだ。
「整理」と「整頓」という言葉がある。前者は秩序立てること、後者は見た目を揃えること。本を分野別・用途別に並べれば整理、大きさ別に並べれば整頓となる。
コーディング規約は専ら整頓のルール。読めない人にとって「きれい」に見せるルール。
コードの意味に関わらないからこそ、実装後に修正ができる。さもなければ、正しいコードは自然とコーディング規約に適うものになるはず。コードの正しさと無関係だから、正しいコードでもコーディング規約違反だったり、コードを理解していない人でも指摘できたりする。
コーディング規約を作って発表する人もいる。でもそれがどれだけ生産性を上げるかについては考えていない。作りっぱなし。そんなルールに「あとで読む」タグを付ける人たちは、プログラミング言語に表現の幅があることを欠点と捉えているのだろうか。本来そういったルールを作っていいのは言語の考案者だけのはずなのに。
あるにはあるけど、言語に組み込まれているライブラリと同じ規則がベストなので、やっぱり規約は要らない。
あとは自己満足。