CHAPTER 12 · 5 lessons · 62問
きれいに書く
動くコードから、読まれるコードへ。三日後の自分と、隣の誰かのために書く章。
最後の章は、動くコードを、読まれるコードにする話だよ。
コードは、書く時間より読まれる時間のほうがずっと長い。あなたが書いたコードを最初に読むのは、たいてい三日後のあなた自身だ。そのとき「これ何だっけ」と言わずに済むかどうかで、その先の速さがまるで変わる。
まず PEP 8。Python には「こう書こう」という公式のスタイルガイドがあって、字下げは半角4つ、変数名は小文字とアンダースコア、演算子の前後には空白を1つ——といったことが決まっている。守らなくても動く。それでも世界中の Python 使いがこれに従っているのは、書き方が揃っていると読むときに中身だけに集中できるからだよ。
次が docstring。関数やクラスのすぐ下に """...""" で説明を書いておくと、それが Python から「この関数の説明」として扱われる。コメントとの違いは、プログラムから読み出せること。ライブラリのドキュメントの多くは、実はこれを集めて作られている。
そして 型ヒント。def tashizan(a: int, b: int) -> int: のように、引数と返値の種類を書いておく書き方だ。Python は書かなくても動く言語だけれど、書いておくと読む人に意図が伝わるし、エディタが間違いを指摘してくれるようになる。最近の Python のコードでは、これがある前提で書かれていることも多いよ。
最後が dataclass。第5章でクラスを覚えたとき、__init__ で self.namae = namae のような行を何行も書いたのを覚えているだろうか。データを持つだけのクラスなら、@dataclass と1行足すだけでそれを全部省ける。書く量が減るぶん、大事なことが目立つようになるよ。
ここまで来れば、Python コースは終わりだ。文法をひととおり通って、他人のコードが読めて、読まれるコードが書ける。次に何を作るかは、あなたが決める番だよ。
この章のレッスン
読み手のために書く
意図を書き添える