いまさらリーダブルコードまとめ(第4章)


はじめに

チーム内リーダブルコード輪読会の第4章。
第3章はこちら

第4章 美しさ

どんな内容?

  • 美しいコードとは、見やすいコード。誰が見てもわかりやすいコード記述を心がけよう
  • たとえ「間違った」スタイルでも、一貫性をもつ方が重要である
  • 美しく、優れた設計を目指そう~

読んだ感想

自分でコードを記述する際には、「美しさ」をあまり意識して書いていなかったことに気付かされた。
ある程度は結構意識しないでもやってるよねーって感じだったが、一貫性をもってプロジェクト全体で統一感をもつと言うことが「正しい」スタイルを固持することより重要だということはあまり意識してなかった。
自分の「正しい」と思っていたスタイルが、もしかしたら全体として、統一感のない見にくいコードを助長していた可能性もあるんじゃないかって考えたりもした。

とにもかくにも、皆が意識して同じような目線でコーディングしていくことが大事で、その延長線上に正しく、美しい、そして設計的にも優れた(改修しやすく、理解しやすい)コードがあるのかなって思った。

リファクタリングの指針にもなりそう。。

意識すべきルール

1.適切な改行位置
 →統一感が出るように、見やすく区切る
2.コメントの共通化
 →同じ意味なら、一つに纏める

例)シルエットを意識

example1
public class PerformanceTester {
    public static final TcpConnectionSimulator wifi = new TcpConnectionSimulator(
           500, /* Kbps */
           80, /* millisecs latency */
           200, /* jiter */
           1 /* packet loss % */);

    public static final TcpConnectionSimulator t3_fiber = 
       new TcpConnectionSimulator(
           45000, /* Kbps */
           10, /* millisecs latency */
           0, /* jiter */
           0 /* packet loss % */);

    public static final TcpConnectionSimulator cell = new TcpConnectionSimulator(
           100, /* Kbps */
           400, /* millisecs latency */
           250, /* jiter */
           5 /* packet loss % */);
}

※本文より抜粋

3.共通部分のメソッド化
 →同じような処理があったら、共通メソッド化する
4.縦の線をまっすぐにする
 →変数の宣言、関数の引数部分等、連続する場合に縦の列をそろえる
5.変数の意味のある並び
 →関連する変数は近くに置く
6.ブロックで管理する
 →意味のある単位で空行を挟み纏めることで見やすくなる
7.一貫性を重視する
 →最後は全体の一貫性が通るようにする。ちぐはぐな書き方は一番駄目!?