DRYの原則はコーディングの原則の一つでDon’t Repeat Your Selfの略語です。これは同じことを繰り返し書かないでください、という意味で、Andrew Hunt, David Thomasが達人プログラマの中で提唱した原則です。ある一つのことを何度もコーディングした場合、そのことの変化に合わせて繰り返した分に合わせて何度もコーディングを変更する必要があります。これは無駄です。そして変更の漏れはバグになります。この無駄とバグをあらかじめ防ぐために同じことを繰り返し書くべきでない、という原則が提唱されました。
同じことを繰り返し書くな、という言葉の”同じこと”という部分は重要です。単に同じ記述をしていることを理由に全てをfor、関数、クラスなどにまとめるべきではありません。ある同じ記述がそれぞれ違うことを表現している記述であった場合、片方だけ変化する事態は少なくないのです。同じことであるかそうでないのかを判断する時の基準として抽象化を用いられます。コーディングしたいもの(ソースコードそのものでなく)を抽象化した時、共通点が現れたならばその共通点はまさしく同じことであり、繰り返さずまとめて記述するべき部分です。
-
Prev2018年11月5日
YAGNIの原則