What Does Each Element Mean?
Passes Its Tests
TDD is a very effective way to limit the amount of code we write, as we are only writing enough code to make the failing test pass. Tests help prove that the system is implementing the expected behaviors. There is no point in having a beautifully designed system if it does not implement the expected behaviors; this is why Passes its tests is the first rule.
Tests also allow us to refactor the design with caution, allowing us to tackle design issues safely and effectively. Finally, tests serve as documentation to improve the clarity of the system.
Minimizes Duplication
Duplication is the first code smell we examined in this book. It is an important indicator we can use to detect problems in our code. Removing duplication often leads us to create new abstractions that more clearly express the intent of the code, thus increasing clarity.
Code duplication leads to many problems in design. This is the reason why this is the second...