Interface Segregation Principle
E811519
The Interface Segregation Principle is a SOLID object-oriented design guideline that advocates for creating small, specific interfaces so that clients only depend on methods they actually use.
All labels observed (1)
| Label | Occurrences |
|---|---|
| Interface Segregation Principle canonical | 2 |
How this entity was disambiguated
This entity first appeared as the object of triple T9635000 — resolving that mention is where its identity was fixed. The disambiguator weighed these candidate entities and picked the highlighted one (or “None”, minting a new entity). This is how homonymy is resolved: the same surface form can point to different entities.
Target entity: Interface Segregation Principle Context triple: [Single Responsibility Principle, relatedTo, Interface Segregation Principle]
-
A.
Dependency Inversion Principle
The Dependency Inversion Principle is an object-oriented design guideline that promotes decoupling by having high-level and low-level modules depend on shared abstractions rather than concrete implementations.
-
B.
Liskov Substitution Principle
The Liskov Substitution Principle is an object-oriented design rule stating that objects of a superclass should be replaceable with objects of a subclass without altering the correctness of a program.
-
C.
Single Responsibility Principle
The Single Responsibility Principle is a core object-oriented design guideline stating that a class or module should have only one reason to change, meaning it should be responsible for just a single, well-defined functionality.
-
D.
Open-Closed Principle
The Open-Closed Principle is a fundamental object-oriented design guideline stating that software entities should be open for extension but closed for modification, enabling systems to grow without altering existing, tested code.
-
E.
SOLID principles
SOLID principles are a set of five foundational object-oriented design guidelines that promote maintainable, flexible, and scalable software architectures.
- F. None of above. chosen
- G. Unsure - the case is ambiguous/there is not enough information to decide.
Target entity: Interface Segregation Principle Target entity description: The Interface Segregation Principle is a SOLID object-oriented design guideline that advocates for creating small, specific interfaces so that clients only depend on methods they actually use.
-
A.
Dependency Inversion Principle
The Dependency Inversion Principle is an object-oriented design guideline that promotes decoupling by having high-level and low-level modules depend on shared abstractions rather than concrete implementations.
-
B.
Liskov Substitution Principle
The Liskov Substitution Principle is an object-oriented design rule stating that objects of a superclass should be replaceable with objects of a subclass without altering the correctness of a program.
-
C.
Single Responsibility Principle
The Single Responsibility Principle is a core object-oriented design guideline stating that a class or module should have only one reason to change, meaning it should be responsible for just a single, well-defined functionality.
-
D.
Open-Closed Principle
The Open-Closed Principle is a fundamental object-oriented design guideline stating that software entities should be open for extension but closed for modification, enabling systems to grow without altering existing, tested code.
-
E.
SOLID principles
SOLID principles are a set of five foundational object-oriented design guidelines that promote maintainable, flexible, and scalable software architectures.
- F. None of above. chosen
Statements (46)
| Predicate | Object |
|---|---|
| instanceOf | software design principle ⓘ |
| abbreviationOf | ISP ⓘ |
| aimsAt |
improving modularity of systems
ⓘ
minimizing client-side code changes when interfaces evolve ⓘ |
| appliesTo |
API design
ⓘ
interface design ⓘ object-oriented design ⓘ |
| benefit |
reduces impact of interface changes on clients
ⓘ
reduces need for clients to implement unused methods ⓘ simplifies client implementations ⓘ supports better testability ⓘ supports mocking of smaller interfaces ⓘ |
| category |
object-oriented programming principle
ⓘ
software engineering principle ⓘ |
| consequenceOfViolation |
clients depending on methods they do not use
ⓘ
harder-to-maintain interfaces ⓘ increased fragility of client code ⓘ |
| encourages |
high cohesion in interfaces
ⓘ
low coupling between modules ⓘ role-based interface design ⓘ |
| goal |
improve code flexibility
ⓘ
improve code readability ⓘ increase software maintainability ⓘ reduce coupling between clients and interfaces ⓘ support easier refactoring ⓘ |
| helpsPrevent |
ripple effects from interface changes
ⓘ
unnecessary dependencies ⓘ violations of the Single Responsibility Principle in interfaces ⓘ |
| introducedInContextOf | SOLID design guidelines NERFINISHED ⓘ |
| opposes |
interfaces with unrelated responsibilities
ⓘ
monolithic interfaces ⓘ |
| partOf | SOLID principles NERFINISHED ⓘ |
| promotedBy | Robert C. Martin NERFINISHED ⓘ |
| recommends |
avoiding fat interfaces
ⓘ
designing role-specific interfaces ⓘ grouping related methods into cohesive interfaces ⓘ splitting large interfaces into smaller, specific ones ⓘ |
| relatedTo |
Dependency Inversion Principle
NERFINISHED
ⓘ
Single Responsibility Principle NERFINISHED ⓘ |
| states | no client should be forced to depend on methods it does not use ⓘ |
| typicalExample |
separating printing and scanning interfaces in a device API
ⓘ
separating read and write interfaces for a repository ⓘ |
| usedIn |
interface-based APIs
ⓘ
microservices design ⓘ object-oriented programming ⓘ service-oriented architectures ⓘ |
How these facts were elicited
The pipeline generated the facts above by prompting gpt-5.1 with this entity's name + description and the instruction below.
You are a knowledge base construction expert. Given a subject entity and a description of it, return factual statements that you know for the subject as a JSON list of dictionaries(triples), where keys must be "subject", "predicate" and "object". The number of facts may be very high, between 25 to 50 or more, for very popular subjects. For less popular subjects, the number of facts can be very low, like 5 or 10. # Requirements - If you don't know the subject at all, return an empty list. - If the subject is not a named entity, return an empty list. - Include at least one triple where predicate is "instanceOf". - Do not get too wordy. - Separate several objects into multiple triples with one object.
Subject: Interface Segregation Principle Description of subject: The Interface Segregation Principle is a SOLID object-oriented design guideline that advocates for creating small, specific interfaces so that clients only depend on methods they actually use.
Referenced by (2)
Full triples — surface form annotated when it differs from this entity's canonical label.