Interface Segregation Principle

Make fine grained interfaces that are client specific.

“Clients should not be forced to depend upon interfaces that they do not use.” — Robert Martin, paper “The Interface Segregation Principle”

We can think of abstraction as the heart of object-oriented design. Abstraction allows us to hide the details of our implementation, and to display only the essential information to the client. This makes the client unaware of the implementation details.

A practical example

[UNDER CONSTRUCTION]


Other articles:

The SOLID principle

Single responsibility principle

Open/closed principle

Interface segregation principle

Dependency inversion principle