【どらいげんそく】
DRY原則 とは?
💡 「同じことを2回書くな」
📌 このページのポイント
なぜ繰り返しがダメなの?
税率計算ロジックが5箇所にコピペされていたら、税率が変わった時に5箇所すべて修正が必要。1箇所でも漏れたらバグになる。DRYに従って1つの関数にまとめておけば、修正は1箇所で済む。DRYの本質は「1つの知識は1箇所に」ということだよ
何でもかんでも共通化すべき?
それは危険だよ。見た目が似ているだけで意味が異なるコードを無理に共通化すると、一方の変更がもう一方に予期しない影響を与える。「偶然の重複」と「本質的な重複」を区別することが大事。Rule of Three(3回同じコードを書いたら共通化を検討)という指針もあるね
WETって何?
DRYはコード以外にも適用できる?
まとめ:ざっくりこれだけ覚えればOK!
「DRY」って出てきたら「同じコードを繰り返し書かない原則」と思えればだいたいOK!
📖 おまけ:英語の意味
「Don't Repeat Yourself」 = 繰り返すな
💬 Andy HuntとDave Thomasが『達人プログラマー』で提唱。DRY(乾いた)の対義語でWET(湿った)だよ