← Path
Design Patterns · Choosing and Avoiding Design Patterns: Over-Engineering and Alternatives
0 XP- 1 current stop: learning
- 2 upcoming
- 3 upcoming
- 4 upcoming
- 5 upcoming
Finish after stop 5
Stop 1 of 5 · Crowded junction with three extra signs
Trick to keep in mind+3 XP
Indirection must pay rent: one implementation behind one factory has no tenant.
A layer of abstraction is justified when it removes a real, repeated pain. A strategy for rules that the business changes monthly pays for itself, as does a retry wrapper reused across clients. An interface with a single implementation, plus a factory that builds only that one, adds names and files and offers no flexibility yet.
Read it once, then a question tests whether the trick stuck.