Backend & Runtime / Knowledge library
Interface Segregation Principle
Prefers focused interfaces so clients depend only on operations they use
Why learn Interface Segregation Principle?
It reduces accidental coupling and needless implementation obligations
The problem it solves
It avoids large interfaces that force unrelated consumers to change together
Where it came from
Interface Segregation Principle is a software design principle that prefers focused interfaces so clients depend only on operations they use. Its guarantees and tradeoffs depend on the concrete implementation and operating context.
Build your understanding
Work through these exercises in order. Try the task before opening a reference.
- Define Interface Segregation Principle and distinguish it from a neighboring concept.
- Choose a realistic task where Interface Segregation Principle is appropriate.
- Identify a failure mode caused by misusing Interface Segregation Principle.
- Interpret a small design or result involving Interface Segregation Principle.
- Explain one tradeoff or limitation of Interface Segregation Principle.
Documentation and sources
- Software Engineering at Google (abseil.io)