【読書】リーダブルコード
読んだ本
リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)
- 作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典
- 出版社/メーカー: オライリージャパン
- 発売日: 2012/06/23
- メディア: 単行本(ソフトカバー)
- 購入: 68人 クリック: 1,802回
- この商品を含むブログ (140件) を見る
概要
より良いコードを書くための実践的テクニックの本。
なぜ読んだか
開発をしているときに、改行をどこでするか悩むことが多かったためよみました。
下のように、普通に書くこともできれば
func Hoge(parameter1: Int, parameter2: String) -> Bool { }
こうやって、パラメーターに改行もできるし
func Hoge(parameter1: Int, parameter2: String) -> Bool { }
返却の型に対しても、改行ができます。
func Hoge(parameter1: Int, parameter2: String) -> Bool { }
何が良いのかよく分からなくなったため、指針を探すために本を読みました。
学んだこと
リーダブルコード第4章(美しさについての章)がとても参考になりました。
ソースコードの美しさを守るための3つの原則
- 読み手が慣れているパターンと一貫性のあるレイアウトを使う。
- 似ているコードは似ているように見せる
- 関連するコードをまとめてブロックにする
この原則を守るために、以下のことを心がける必要がある。
- 複数のコードブロックで同じようなことをしていたら、シルエットも同じようなものにする
- コードの「列」を整列して、概要を把握しやすくする
- ある場所でA・B・C・Dのように並んでいるものは、他の場所でもその順番を守る
- 空行を使って大きなブロックを論理的な「段落」に分ける
最初に思っていた疑問への答え
最終的には好み
冒頭にあげていた、改行への疑問は、最終的にプログラマーの好みになるということがわかりました。
しかし、同じプロジェクト上で2つの書き方が混在していると、ソースコードが読みにくくなるということも学びました。
疑問点
プロジェクト内で2つ以上の思想がある場合は、どのように解決していくのが良いのかなと思いました。
書き方について、こだわりのあるエンジニアがいた場合は、良い感じに話し合っていくのが良いのかもしれません。
また、余計な衝突を防ぐためにも、「1行に100文字以上は書かない」などのルールを設けておくことも大事なのかなと思いました。