12月26日 コーディング規約はなぜ必要か
12月26日ですね。
昨日、バグの調査で、既存のソースコードを見る機会がありました。
バグ自体はすぐに特定できました。
ですが、そこで使われている変数名やESLintの定めた文法を無視した書き方には、改めてコーディング規約の必要性を感じました。
コーディングとは個人的な営みです。
コーディングをする本人が理解でき、結果としていただいた仕様がきちんとシステムに動きとして反映していれば良い。
そう思う気持ちはわかります。私も昔はその考えでした。
特にプログラムを覚えたての頃は、自分の成果物がずっと残り続けるわけですから、そのコーディングを自分で囲い込み、仕事を囲い込もうと言う思惑すら持っていました。
そのような思惑は本格的な開発現場に出ると全く通用しません。そもそもあまりにコーディング量が多すぎて、自分のやった内容などどこかに埋もれていってしまいます。
また頻繁に仕様変更などでメンテされるので、自分の書いた内容はどんどん刷新されていきます。
また、その時に他の人の書いたコードを見たり、自分の書いたコードが他の人によって更新されていくのを見ていると、きちんとした書き方でコーディングしないとまずいのでは?という自覚が芽生えます。
世の中にはそのためにコーディング規約が存在します。
特にJavaScriptはたくさんの規約があり、私たちもそれに沿った形でやることが推奨されます。
確かに、最初はESLintの規約に沿ったコーディングが面倒に思うかもしれませんが、慣れてくるとそうでもありません。あとあと、楽になって来ます。
そもそも技術者として自分自身のコードだけをずっとメンテしていられる状況って、もしそれだけで食っている場合、その人の技術キャリアはまずい状態だといえます。その方はその業務から全く動けてないと言うことを意味し、キャリア的には全く成長できてないことになりますから。
来年は、コーディング規約をもう一度徹底してもらうことにします。
また、このお客様からもESLintの利用による品質の標準化を指示されました。
もう全くその通りだと思います。