Stage 2 · Lesson 7 of 7
DRY, KISS and YAGNI: the counterweights
SOLID can be overdone, and three short principles keep it honest. , "don't repeat yourself", says each piece of knowledge, such as a tax rule, should have one home. KISS, "keep it simple", says prefer the simplest design that works.
YAGNI, "you aren't gonna need it", says do not build for needs you only imagine. Together they tell you when to stop: no interface until a second implementation, no factory until creation is actually complicated. DRY is about knowledge, not text. Two functions that look alike but change for different reasons are not duplication.
Common trapmerging such look-alike code into one shared function, which then sprouts a boolean flag for every caller and becomes harder to change than the copies were.
A question to check yourself, an AI practice session and 1 cheat sheet entry come with the full roadmap. Unlock
Resources for this stage
Start with· follow one of these
- CoursePaidGrokking SOLID Design Principles
Design Gurus · Beginner · $50 one-time
One chapter per principle, each with the violation and the refactoring that fixes it
- CourseFreeMIT 6.102: Software Construction
MIT · Intermediate
Free: the Specifications and Interfaces and Subtyping readings explain substitution as contracts