エキサイトのあはれんです。
弊社で始まった社内定期勉強会について紹介いたします。 第1回定期勉強会は「メディアのコーディング規約適用事例と効果」でした。 メディアチームのコーディング規約について説明を聞き、エキサイトHDのメンバーで議論しました。 最大参加人数は51名にも達し、多くのメンバーが参加してくれました。😊🎉
コーディング規約を決めている定例会の議論の活性化方法から始まり、 命名規則等のコーディング規約について数多くのメンバーが意見を出し合っていました。
勉強になったポイント
今回の定期勉強会で、私個人が勉強になったことをピックアップして紹介します。
コーディング規約「早期returnを使用する」
私も早期returnを使用することには賛成でして、 「処理に関係ない条件の状態はさっさとreturnして、気にしないといけない条件の状態を減らしたい」 という気持ちでいつもreturnを使っています。
定期勉強会では、早期returnを使用する理由として以下が挙げられていました。
returnしないでいるとその後もダラダラ書けてしまい結合度が高くなる。 早期returnをすることでダラダラ書けない状態にする。
エンジニアに結合度を高くなるコードを書かせないようにする工夫として、 「早期return」を使うという観点はなかったので、 新たな視点で「早期return」を使う理由が知れてよかったです。
コーディング規約「単純分岐でSwitch文は使用しない」
これは、議論が盛り上がったコーディング規約でした。 その議論の中でも以下の意見には、ハッとさせられました。
switchだと、変数の状態によって処理が変わることがわかる。 ifの条件はなんでも書けるので、変数の状態によって処理が変わるかどうかはすぐに判断できない。
言われてみればそうなのですが、意識していなかった部分でした。 読みやすいコードを書く上で、上記の考え方は重要なことだと思いますので、 これからコードを書くときは意識してみようと思いました。
まとめ
コーディング規約に関して議論することで、コーディング規約の理由を理解することができてよかったです。 これからも社内の定期勉強会で得られた知見やノウハウを紹介していきますので、見ていていただけると幸いです。