リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

読もうと思ったきっかけは、普段書くコードが他人から見て見にくいな、と思ったこと。
決して見せられないほどひどくは書かないけど、頭にスラスラと入ってくるぐらい良いコードを書けていないので、
この機会に見なおそうと思いました。

Amazon

http://www.amazon.co.jp/dp/4873115655

内容

タイトルの通り、コードをいかにしてより良いものにするかというがメインです。
コメントや変数名の付け方などの基本的なものから、
1関数1機能にすること、をどう徹底するかなど、ちょっと踏み入ったものまであります。
普段コードを書く人からすると、すでに身についているものも多いですが、
文章として書かれると、意外と知らず知らずにやっていたことが「そうなっていたのか」と納得できることもありました。

感想

僕としては、以下の内容が良かったです。

  • コメント
    • 曖昧な代名詞は避ける。曖昧な部分を排除することで、よりコメントが読みやすくなる
  • 変数
    • 説明変数・要約変数を用意して、処理フローや関数の引数をわかりやすくする
    • 例えば、関数の引数にbooleanを渡す場合は、その意味を表す変数で代入する。isforce = true; delete(“.”, isforce); など
    • 時間の変数などは、_msなど単位をつける
    • 他の意味と間違えられないように、変数名は何度も検討をする
    • 例えば、listのsizeを求める関数がある。この関数が要素を一つ一つカウントするのであれば、countとする方が良い。直感的に計算量が違うことがわかる
  • 条件式
    • あまりにも大きな条件式ができてしまった場合、問題を一度整理してみる。複雑すぎるとバグのもととなる
  • 関数
    • 無関係の下位問題は別の関数としてくくりだす
    • 関数内の各段落(コード単位)で一つのタスクを行う(実際に本の例を見るとわかりやすい)
  • テスト
    • (行数が)最小のテストを作り、読みやすいテストにする。新しいコードを追加しときに、テストをしやすくなる

全然本の内容とは関係ないけど、本文中の以下の言葉も納得。

「エンジニアリングとは、大きな問題を小さな問題に分割して、それぞれの解決策を組み立てることに他ならない。」

普段のコードにも取り入れてみて、より良いコードを書いていきたいね。

Posted at : 2015-01-08 16:16:47 / Category : book

Comments

まだコメントはありません / No comment.

Send comment


Name


Mail-address (empty is OK. If you want to notify update, please fill mail-address.)


Bot check code (240509 と入力してください / Please input 240509.)