読んだ本
「プリンシプル オブ プログラミング3年目までに身につけたい一生役立つ101の原理原則」
この記事では、5章〜7章の中で特に覚えておきたいことを記載します。
ボーイスカウトの規則
Boy Scout Rule
ボーイスカウトの「自分のいた場所は、そこを出て行く時、きたときよりも綺麗にしなければならない」という規則。
最初にそのコードを書いたのが誰であるかに関係なく、少しずつでもコードを改善する努力を続ける。
エゴレスプログラミング
Egoless programming
「うぬぼれ」や「プライド」を捨て、自分の書いたコードを積極的に仲間に見せ、改善点を指摘してもらう。
エゴレスプログラミングの十戒
- 自分自身も間違いを犯すということを理解し、受け入れます
- 書いたコードは、自分自身ではありません
- どれほど極めたと思っていても、上には上がいます
- 相談なしに、コードを書き直しません
- 自分よりもスキルが劣る人にも、尊敬と敬意と忍耐を持って接します
- 世界でういいつ変わらないことは、変わるということだけです
- 本当の権威は、地位ではなく、知識から生じます
- 信じる者のために戦います。ただし、負けは潔く受け入れます
- 部屋に篭りきりはいけません
- 「人に優しく、コードに厳しく」して、人ではなくコードを批評します
1歩ずつ少しずつ
One by one
小さな作業を1つ行い、それをしっかり確認し次の作業に移る、というサイクルを繰り返す。
1歩ずつ進めると、最後の一歩を後戻りすることが楽になる。また、各1歩の確認が楽になる。
例)
リファクタリングであれば、モジュール間で関数を移動する時、
関数名の不備に気づいたとしても移動と名前お変更を同時に行ってはいけない。
関数を移動したあと、一旦その状態で動作確認をしてから関数名の変更に取り組みます.
割れた窓の法則
Broken Windows Theory
悪いコード(割れた窓)を放置すると、建物全体に対する深刻な破損が起こる
ソフトウェアに「割れた窓」が少しでもあると、修正するプログラマに「きっと残りの全てのコードもガラクタなんだから、自分も適当に作業してしまえ」という考え方が忍び込む
コードのよく無い部分をそのままにせず、発見と同時に修復する。
もしくは、このコードがよく無いという旨をわかりやすいところに明示する。