What does "DRY" mean as a software design principle, and what is a risk of over-applying it?
Correct! Well done.
Incorrect.
The correct answer is A) "Don't Repeat Yourself" — extract duplicated logic into shared functions or modules; over-applying it can produce premature, overly generic abstractions that are harder to understand and change than the duplication they replaced
Correct Answer
"Don't Repeat Yourself" — extract duplicated logic into shared functions or modules; over-applying it can produce premature, overly generic abstractions that are harder to understand and change than the duplication they replaced
DRY encourages factoring out duplicated logic into a single, well-named place so changes happen in one spot. Taken too far, it can produce a tangled abstraction shared by unrelated use cases — sometimes a little duplication is easier to evolve than a forced abstraction (the "wrong abstraction" problem).