ALL-INTE1001 · interface_segregation
Judge whether clients depend on a focused contract.
This is a contextual rule for all languages. Read its implementation.
Definition
Section titled “Definition”Compare interface members with the subsets used by each client and implemented meaningfully by each provider. Small size alone does not establish a focused interface. The criteria independently establish client usage, provider support, distinct subsets, split cost, and a facade boundary.
Evidence
Section titled “Evidence”Findings cite members, client usage matrices, implementations, and candidate contract splits.
Exceptions
Section titled “Exceptions”A cohesive facade may expose several operations when clients understand one unified capability.
Examples
Section titled “Examples”A storage protocol forcing read-only clients to implement deletion is bloated. Separate read
and write protocols are focused when their clients differ.
References
Section titled “References”- Cites “Design Principles and Design Patterns”, SOLID interface segregation principle
- Cites “Building Maintainable Software”, write small interfaces
- Cites “Fluent Python”, Interfaces, Protocols, and ABCs