Learn abbreviations used in software architecture and design: DRY, SOLID, YAGNI, KISS, GRASP, TDA, IoC, DI, AOP, CQS — principle abbreviations explained in professional context.
0 / 5 completed
1 / 5
A senior developer comments on your PR: 'This violates DRY — you have the same logic in three places.' What does DRY stand for?
DRY stands for Don't Repeat Yourself. It is a principle stating that every piece of knowledge should have a single, unambiguous representation in a system. Duplicate logic increases maintenance cost and the risk of inconsistencies.
2 / 5
The tech lead says: 'We should follow SOLID principles when designing these classes.' What does the 'S' in SOLID stand for?
The S in SOLID stands for Single Responsibility Principle. SOLID is an acronym for five design principles: Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion. Each letter addresses a different aspect of object-oriented design.
3 / 5
During planning, your colleague says: 'YAGNI — let's not build that feature until someone actually needs it.' What does YAGNI mean?
YAGNI stands for You Aren't Gonna Need It. It is an Extreme Programming principle advising developers not to add functionality until it is necessary, avoiding over-engineering and speculative features.
4 / 5
The architect writes in the design doc: 'Keep it simple — KISS applies here.' What is KISS?
KISS stands for Keep It Simple, Stupid (sometimes 'Keep It Short and Simple'). It is a design principle stating that most systems work best if they are kept simple rather than made complicated. Unnecessary complexity should be avoided.
5 / 5
The code review notes: 'Use IoC here — the class should not instantiate its own dependencies.' What does IoC stand for?
IoC stands for Inversion of Control. It is a design principle where the control of creating and managing dependencies is transferred from the class itself to an external framework or container. Dependency Injection (DI) is the most common pattern for implementing IoC.