コーディングルールに関する余談

ところで、宗教上の理由によりswitch文を使うことができないのですが、他の人が書いたCのコードを読んでいると、gdgdいわずに使うべきかという気がしてきます。他にも、「ifブロックの中身がたとえ1行でも中括弧を省略してはならない」という戒律もあり、生きるのが辛い(嘘)。

こうなった言い訳を少ししてみます。

コードの行数の少なさは可読性に直結しません。…とはいえ、exit (1)と1行書くためだけに中括弧を使うのは、人によっては可読性を損ねていると感じられるかもしれません。

しかし、ここで重視したいのは「統一されている」ということです。

仮に、exit (1)のための中括弧は大げさだという話になったとしましょう。では、exit (1)の数十倍の長さの1行であれば(←そもそもそんなコードかくな)、中括弧を用いるのが妥当でしょうか。違います。「if文の条件式の後には、ブロック内の行数を問わず、開始中括弧を置くべし」という単純なルールで統一されることが重要なのです。

しかし、もしチームのルールで「if文が1行なら中括弧は省略する」と決まったら、それには当然したがうべきでしょう。統一とは、「一つのコードベースの中での統一」をも意味します。そうすることが、ひいてはコード全体の可読性を上げることになります。チームのルールは優先されなければなりません。

・・・というような躾を受けた結果、今はそのまま信じているというわけです(自分の咀嚼は上の通りだけれども、正確には違うかもしれない。まあ、あまりにも違っていたら、ダウトの指摘が入ることでしょう…)。今後もっとコードを書いていけば、自分なりの考えが醸成されるかもしれません。そうなると良いですね。

# どう見ても飲み会ネタです。本当にありがとうございました。