Good Code, Bad Codeを読んだ。
良いコードと悪いコードの違いを、抽象化やモジュール性、エラーハンドリング、テストといった観点から具体的に示してくれる一冊。「なんとなく良さそう」で片づけがちなコードの品質を、判断できる基準に落とし込んでくれる。
特に有用だったのは、契約(コントラクト)の明確化、想定外の入力に対する備え、再利用や誤用のしやすさへの意識といった指針だ。いずれも日々のレビューでそのまま使える。
中堅になって何となく身につけた感覚を、言葉と原則で裏づけられる。若手に説明するときの共通言語としても重宝しそうな内容だった。