この法則は、一方では新しい開発を推進する力と、他方では進歩を遅らせる力との間のバランスを記述している。
実世界で使用されているソフトウェアシステムは、環境の中で変化したり、ますます有用でなくなったりしなければならない
システムが進化すると、それを減らすための作業が行われない限り、その複雑さは増加します。
しかし、"リファクタリング "という言葉は、適切でない場合によく使われます。もし誰かがリファクタリングをしている間に、システムが数日壊れていると話していたら、彼らはリファクタリングをしていないと確信できるでしょう。
1/2 + 1/4
を計算する2/4 + 1/4
とすると、3/4
になります。1/2
を2/4
に変更することで、1/2
を2/4
に変更することで、私たちの「ドメイン」にフィットしやすくなります。language
でname
を迎える関数は以下の通りです。if
文を持つのは気分が悪いし、言語固有の挨拶を,
とname.
で連結するという重複があるので、コードをリファクタリングしてみます。Hello
関数のユニットテストは次のようになります。go test
を実行して、リファクタリングの努力が挙動を変えたかどうかのフィードバックをすぐに得ることができます。 実際には、エディタ/IDE内でテストを実行するための魔法のボタンを覚えるのがベストです。