YAGNI - You Ain't Gonna Need It
Is a principle of XP (extreme programming) that states, a developer should not add functionality that isn’t needed.
Sometimes this is also stated as “Do the simplest thing that could possibly work”
Rationale
This practice helps lead to simple, less complicated code that is easier to understand and maintain.
What this means
- Code for the scenario given, and the plausible edge cases
- Design code to be extensible in the future
- If you don’t need it yet, don’t build it.
- Don’t guess at future requirements, wait until they appear