Help us understand the problem. What is going on with this article?

Readable Code を読む - はじめに ~ 第1章 -

More than 1 year has passed since last update.

Readable Code を読む

今までほぼ我流でコーディングしてきたので,ずっとどうにかしたいと思っていました.
そんなときに,O'REILLYの Readable Code を奨めてもらったので,読んで自分用にまとめてみようと思います.

今回の内容は,はじめにから第1章まで(第1部の前までの最初の部分)についてです.

はじめに・第1章はこちら
第1部と第2部はこちら
第3部と第4部はこちら

本書は次のリンク先等で入手できます.
Readable Code

はじめに

美しいコードを見ると感動する
優れたコードは見た瞬間に何をしてるかが伝わってくる

本書の目的はコードをよくすること.
コードは読んでいる時間が非常に長いので,読みやすいコードを書くことは重要である.
具体的に読みやすくするための項目に以下のようなものが挙げられる.

  • 変数の名前をつける
  • ループの処理を書く
  • 問題を関数のレベルまで落とす

「読みやすいコード」を書くことは「理解しやすいコード」を書くことであり,「優れたコード」につながる.

本書の構成

本書は大きく4つの部に分かれている.

  1. 表面上の改善
    名前・コメント・見た目のようなコード全体に適用できる簡単なヒント

  2. ループとロジックの単純化
    プログラムのループ・ロジック・変数などを改善して理解しやすくする方法

  3. コードの再構成
    巨大なコードブロックを再構成して問題を関数のレベルに分解する方法

  4. 選抜テーマ
    「理解しやすさ」をテストや大きなデータ構造に適用する方法

各章は独立しているので,どの章からでも読み進められる.

1章 理解しやすいコード

コーディングの基本定理を以下のように考える.

コードは他の人が最短時間で理解できるように書かなければいけない.

ここでいう理解ができるとは次のようなことができることを指す.

  • 変更を加えることができる
  • バグを見つけることができる

コードは短ければいいってもんじゃない

コードは確かに短い方がいいが,あくまで基本原則の「理解するまでにかかる時間」を短くする方が大切である.

次の2つのコードはどちらも同じ動作をする.

if (num == 10):
    flag = True
# change flag into True, when num is 10
if (num == 10):
    flag = True

上のコードの方が短いが,下のようにコメントをつけた方が読みやすいこともある

ここで大事なことは「このコードは理解しやすいだろうか?」と自問自答することだ.

今回のまとめ

コードを読む立場になって,読みやすいコードってなんだろう.と考えてみることが第一歩ですね.
コードを読むのは半年後・1年後の自分かもしれません.

hsmtknj
本ブログの内容は,ほとんど自分用のメモです. 間違ったことを書いてしまうことも多々あるかと思いますが,他人のメモを見るくらいの気持ちで,温かく見守っていただけたら幸いです. また,本ブログは予告なく内容が変更される場合があります. あらかじめご了承ください. ツイッター: https://twitter.com/hsm2two
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away